我正在 XCode(3.2.6) 中为 Mac 构建 Maya 应用程序。我正在构建自己链接的库,此外我还链接应用程序中包含的一些 Maya 库。 Maya 似乎是 64 位的,当我从终端在其中一个 dylib 上运行文件时,我需要链接到它,上面写着“64 位动态链接分片库 x86_64”。一切都很好,我可以构建我的所有项目。
但是,我收到了大量警告,内容都是这样的:
...dylib, file was built for unsupported file format which is not the architecture being linked (i386)
我链接到的每个库都会获得一个,包括我构建的库。我有一种奇怪的怀疑,认为这个警告是一个严重的警告,并且它影响了它们的可用性。 Maya 无法加载我的顶级包,我猜这是因为这个警告。至少,摆脱它们会很好,因为来自 Windows,这听起来很糟糕。我的所有项目设置通常与“体系结构”设置相同。我的“架构”刚刚设置为“64位英特尔”,我的“有效架构”设置为“ppc64 x86_64”。我之前有我的后一个论点包括更多“i386 ppc ppc64 ppc7400 ppc970 x86_64”,但这也不起作用。我尝试了很多不同的设置,但没有成功摆脱这些警告。
我想我的问题是:什么决定了“被链接的架构”? i386 警告从何而来?这似乎不是一个项目设置。这听起来像是可能会搬起石头砸我的脚吗? 有什么建议可以摆脱它吗?
i386
是 32 位 x86。您需要确保您构建的所有库都是x86-64
。请注意,检查项目设置可能还不够,因为架构可以在 target 级别覆盖,因此您还需要检查每个目标的架构。