我想在我的Mac OS X(v10.8.3)上构建并安装libconfig作为64位。
我可以在终端内部使用哪些命令?
如果我只使用./configuresudo make install这个库将作为32位安装。
否则。。。如何在安装过程之后从系统中正确删除库(库位于/usr/local/路径中)?
谨致问候。

最佳答案

您可能需要在configure命令行上传递CFLAGS='-arch x86_64'以正确设置体系结构:

./configure CFLAGS='-arch x86_64'

更新:
添加CFLAGS不会改变configure检测系统的方式,只会改变传递给gcc的内容。但它将构建为64位可执行文件:
$ file lib/.libs/libconfig.*.dylib
lib/.libs/libconfig.9.dylib: Mach-O 64-bit dynamically linked shared library x86_64

如果您确实希望configure输出正确,则需要传入一个--build参数:
$ ./configure --build=x86_64-apple-darwin10.8.0
checking build system type... x86_64-apple-darwin10.8.0
checking host system type... x86_64-apple-darwin10.8.0
checking target system type... x86_64-apple-darwin10.8.0
...

结果库也是64位的:
$ file lib/.libs/libconfig.*.dylib
lib/.libs/libconfig.9.dylib: Mach-O 64-bit dynamically linked shared library x86_64

不可否认,在这里使用--build选项是更好的选择。然而,由于Mac OS X上的gcc可以构建“胖”二进制文件,它有点模糊了您构建的机器的界限,因为它可以同时为i386和x86ʂ构建。

关于c - 在Mac OS X上构建libconfig 64bit,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16012505/

10-11 00:26
查看更多