Ios 启用位代码时出现错误:clang:error:argument未在编译期间使用:'-fembed位码标记';
我有一个框架需要在启用位代码的情况下发布。我已在项目“生成设置”中将“启用位代码”设置为“是”。在Makefile中,我有如下命令行:Ios 启用位代码时出现错误:clang:error:argument未在编译期间使用:'-fembed位码标记';,ios,xcode7,bitcode,Ios,Xcode7,Bitcode,我有一个框架需要在启用位代码的情况下发布。我已在项目“生成设置”中将“启用位代码”设置为“是”。在Makefile中,我有如下命令行:xcodebuild OTHER\u CFLAGS=“-fembed bitcode”-target MyFramework-configuration${CONFIG}-sdk iphoneos。当我运行makefile时,我得到一个错误: clang: error: argument unused during compilation: '-fembed-bi
xcodebuild OTHER\u CFLAGS=“-fembed bitcode”-target MyFramework-configuration${CONFIG}-sdk iphoneos
。当我运行makefile时,我得到一个错误:
clang: error: argument unused during compilation: '-fembed-bitcode-marker'
但是当我在“构建设置”中将“启用位代码”更改为“否”时。没有发生错误。然后运行命令otool-l build/Debug output/MyFramework.framework/libMyFramework.a | grep uu LLVM
,我可以得到segname u LLVM
因此,问题是:
xcodebuild OTHER\u CFLAGS=“-fembed Bitcode”
李>
othercflags=“-fembed bitcode”
添加到build命令中,或者将-fembed bitcode
添加到“build Settings”中的“OTHER C Flags”中,对吗经过一些测试,我想我已经得到了我的答案,如果我错了,请纠正我。如果您的框架不依赖于其他项目,那么当您设置这两个设置时,您将收到上面提到的错误消息。但是如果您的框架依赖于其他项目,例如,您有一个工作区,其中有两个项目,一个项目和一个项目。项目依赖于B。在这种情况下,应将“启用位代码”设置为“是”,同时将
-fembed位代码设置为。因为当您发布A.framework时,编译器应该知道位代码在B二进制文件中的位置。因此,应打开“启用位代码”以在B中标记-fembed位代码标记