我正在尝试使用非本机架构构建C库。我正在运行OSX 10.6(x86_64),但我需要为i386编译的库。通常,您只需添加编译器标志:-arch i386。但我正在使用Autoconf,它在配置文件中忽略了它,如果我尝试运行它也会忽略它:./ configure CC =“gcc -arch i386”。
我知道它构建x86_64目标文件,因为我使用otool查看了标题。真正的问题是,当autoconf写出配置摘要时,它会在cc标志中列出-arch i386。这是怎么回事?
规格:
OSX 10.6.2
gcc 4.2.1
autoconf 2.64
制作3.81
答案 0 :(得分:1)
假设“CFLAGS =' - arch i386'就是你所说的”通常,你可以添加编译器标志“,我最好的猜测是代码的维护者在配置中做错了。 ac和覆盖的CFLAGS。检查configure.ac(或者如果项目是旧的则配置。)并查看它们是否已明确分配给CC或CFLAGS。同时检查Makefile.am是否有分配。可能是错误的。你做了什么应该工作。
答案 1 :(得分:0)
你想在CFLAGS环境变量中设置它,autoconf应该将它附加到它决定CFLAGS应该是什么。如果输入./configure --help,您应该获得所有有影响的环境变量的列表。