我们有一个基于C ++ / Objective C的应用程序。 我们使用LLVM-GVC编译器来编译代码。
目前,我们构建32位二进制文件并将其部署在客户的计算机上。 我们支持SnowLeopard,Lion,Mountain Lion和Mavericks。 我知道所有这些都是64位操作系统。他们可以运行32位二进制文件。
但我想知道,继续前进,部署我的应用程序的64位二进制文件是一个更好的主意吗? 我可以编译我们的代码库并构建64位二进制文件,但我将不得不链接第三方64位库等。 我认为它可行。
我的问题是部署64位二进制文件有什么好处,前提是32binbin仍可以在这些操作系统上运行?
还有什么回合Universal Binary?你们认为构建通用二进制文件会是更好的选择吗?如果是,为什么?
我很感激任何想法/建议。
答案 0 :(得分:0)
如果您的二进制文件是独立的应用程序,就像它们不是其他程序的插件或dylib一样,那么使用32位二进制文件没有任何问题。你的公司很好;如果您查看Google的Chrome浏览器,它也会使用32位二进制文件。
64位的优点是你可以满足更多的内存,如果需要的话,我认为有一些汇编指令可以更快地使用64位指令,但总的来说,如果它适用于你,我不会相信这是一个问题。
如果您发现自己创建了一个必须同时适用于32位和64位应用程序的dylib,那么这就是创建通用二进制文件的一个原因,以节省必须创建其中一个并在运行时计算出您需要的内容;使用通用二进制OSX将为您解决这个问题。