ld: -no_pie and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together 错误

ld: -no_pie and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together error

当我尝试在 iPhone 4 上从 XCode 7 执行我的应用程序时,我收到 ld 错误: ld: -no_pie和-bitcode_bundle(Xcode设置ENABLE_BITCODE=YES)不能一起使用

那是什么 -no_pie,如何解决这个问题,当然不用禁用 bitcode?

当我为 iPhone 6 模拟器编译时,一切都完全没有这个问题。

no_pie 使 clang 生成与位置无关的代码 AFAICS。尝试将 -pie 指定给链接器

另见: Can I make clang generate absolute addresses for function pointers?

问题是由于在 PROJECT 设置中将 Generate position-dependent code 配置设置为 YES,这显然覆盖了目标中的配置。