![]() |
1
28
我在集成Adobe Omniture的“AppMeasurement”库时遇到了这个问题,该库目前为3种架构编译:libappMeasurement iossimulator.a、libappMeasurement iosdevice.a和libappMeasurement-iosdevice-armv7.a。 虽然这里的其他答案基本上是正确的,但我最终不得不到其他地方去真正理解并解决这个问题。 步骤1。了解问题 这个 blog post 很好地解释了整个问题。它给出了解决问题的从头到尾的指示。 在XCODE 3中 . xcode 4见下文。 注: 您可以尝试跳过他所说的添加静态库,然后删除它们。下次我这样做时,可能只需要添加头文件,然后直接跳到编辑其他链接器标志。 步骤2。Xcode 4中的条件生成设置 这个 StackOverflow page 解释在Xcode4中设置条件生成设置的新方法。 提示: “生成设置”选项卡上的文本字段已启用拖放功能;在其他链接器标志下准备好编辑条件生成设置后,可以直接将静态库文件拖到文本字段上,Xcode将自动输入(希望是相对的)路径。 以下是我的其他链接器标志的屏幕截图,当我得到“缺少所需的架构i386”警告时,不要出现构建错误:
|
![]() |
2
9
您有3个选项:
|
![]() |
3
5
如果有人遇到这样的警告:“不是为体系结构构建的[lib_for_sim_or_device]”,则在将第三方库文件夹拖到项目中时会出现警告。 在场景的后面,Xcode会自动将库文件添加到“target setting->build phrases->link binary with libraries”部分中,这会导致与两个库链接。 要解决这个问题,请从“链接二进制与库”中删除这些条目,然后按照上面关于SIM/设备的条件构建设置的指南进行操作。 希望它有帮助! |
![]() |
4
3
建议不要将库添加到项目和目标中,而是将其他链接器标志设置为每个配置包含对链接库的单独直接引用。 调试:
为了释放
当然,您可以使用对其他构建设置的引用,使这些路径相对于某个持久的对象,或者使用源树到外部源树。 |
![]() |
5
1
对于xcode 3.2.1中的选项1(参见Louis Gerbarg答案),选择“其他链接器标志”,然后从构建设置窗口左下角的下拉菜单中选择“添加构建设置条件”。有关“其他链接器标志”语法,请参阅cdespinosa answer) 或者,如果设备/模拟器库位于不同的目录中,也可以将构建设置条件“添加到”库搜索路径中。 |
![]() |
6
1
其他链接器标志和在其中添加库的问题在于控制库的链接顺序,这一点很重要。似乎链接器标志版本意味着这些库将首先出现,所以如果您在Xcode中管理必须先出现的其他库,则必须放弃该库并将所有内容移到其他链接器标志中…!-P |
![]() |
7
0
在我的Xcode3.2.3中,正确的命名似乎是其他的_ldflags,而不是其他的_linker_标志。 |
![]() |
George S. · 是否存在基于元组的控制流语句内部表示? 7 年前 |
![]() |
FlatAssembler · 在x86程序集中计算exp(x) 7 年前 |
![]() |
cib · 即时编译和动态编译有什么区别? 7 年前 |
![]() |
Artemis · 寄存器与指令之间的差异 7 年前 |
![]() |
Sam · 了解go工具编译和链接命令 7 年前 |