我正在尝试在OSX上编译python 32位。为了做到这一点,我想指定-m32,所以我尽职尽责地指定了
CFLAGS='-m32' LDFLAGS='-m32' ./configure
configure正确执行,但是当我调用make时,gcc执行没有-m32标志的跟踪。为了拥有它,我必须采取更积极的方法:
CFLAGS='-m32' LDFLAGS='-m32' CC='gcc -m32' ./configure
我真的不明白为什么我指定的CFLAGS没有传递(LDFLAGS是。我在Makefile中找到LDFLAG = -m32)。这是配置脚本的错误,还是我做错了?
我正在使用python 2.6.0(不要问)
答案 0 :(得分:2)
好的,我可以用Python-2.6重现它。这似乎是该版本中的一个错误,并在较新版本中修复。
不过,我可以告诉你,各种软件包通常会覆盖或过滤被认为不安全的值CFLAGS
等等。这通常也涵盖-m32
。
此外,许多软件包只是忽略LDFLAGS
(这确实是一个错误)。因此,对于构建32位软件包版本的特定情况,通常会像您一样覆盖CC
,并单独留下CFLAGS
和LDFLAGS
。