5

最近刚开始收到一封包含以下建议的应用商店提交电子邮件。

请确保您的构建设置已配置为创建 PIE 可执行文件。

但是 XCode 中的设置似乎正确,在我发现的链接部分

“不要创建与位置无关的可执行文件”,设置为 NO。

(双重否定YUK)。

4

2 回答 2

2

您收到此 Apple 警告可能不是因为您的应用程序本身,而是因为未编译为 PIE 的 3rd 方库。例如,如果您使用 Marmalade SDK Engine,您将收到此警告(他们将在 9 月修复它)。

但是您可以尝试在构建设置中添加更多编译器标志:

其他 C 标志中,您可以放置​​标志:-fPIC

其他警告标志中,您可以放置​​:-Wl,--emit-relocs和-Wl ,--warn-shared-textrel

要查看您的应用是否为 PIE:

otool -hf /path/to/your/App.app/app

参考:https ://developer.apple.com/library/ios/qa/qa1788/_index.html

于 2013-08-21T21:27:34.797 回答
0

我得到了苹果的回应

非 PIE 二进制文件 - 可执行文件“ProductManualApp.app”不是与位置无关的可执行文件。请确保您的构建设置已配置为创建 PIE 可执行文件。

根据我在谷歌的研究,很多人说它与“不要创建与位置无关的可执行文件”有关。我认为应该保持默认,即“否”

于 2013-05-16T03:50:05.887 回答