OSX链接非通用(i386)w /通用.dylib

时间:2010-09-23 09:53:01

标签: macos linker universal

这合法吗?我收到错误“无法找到< lib> .framework / Versions / 4 /< lib>”来自链接器。在这种情况下,< lib>是'QtGui',它是作为i386框架构建的(不是通用的),但我链接的另一个(第三方)lib(使用QtGui)通用的。

我认为一切都必须是普遍建立的......

2 个答案:

答案 0 :(得分:0)

您可以将非通用框架(仅限i386)与通用框架(例如i386和x86_64)链接以生成i386二进制文件。

当然,在这种情况下你不能制作x86_64二进制文件。

请注意,如果您的Mac具有64位CPU,则链接器默认使用x86_64二进制文件。因此,如果您的任何库没有x86_64部分,链接器将会抱怨。如果要创建i386二进制文件,则需要在命令行中明确指定。

答案 1 :(得分:0)

罗杰。

事实证明我的问题实际上源于外部库中必须重置的错误嵌入路径(我认为这不会影响链接,但确实如此)。

普遍构建问题是一个可疑的罪魁祸首,但没有。

谢谢, rickb