Distutils编译器选项配置

时间:2013-04-18 07:58:07

标签: python python-2.7 distutils enthought

也许是一个愚蠢的问题,但我想知道Python的distutils从哪里获得编译器选项?它得到一些错误的链接目录,我想一劳永逸地纠正它。

我知道应该有一个前缀/ lib / pythonver / distutils / distutils.cfg但我在计算机上的任何地方都找不到任何distutils.cfg。显然我没有本地setup.cfg或任何$ HOME / .pydistutils.cfg。

我在Mac OS X 10.8.3上使用Enthought 64位发行版7.3(Python 2.7)

干杯, Ú

2 个答案:

答案 0 :(得分:7)

我实际上将它们导出到环境中,就像autotools的configure:

一样
export CC=/usr/local/bin/clang
export CFLAGS=-I${HOME}/include
export LDFLAGS=-lboost

如果您还需要单独覆盖链接器:

export LDSHARED=/usr/local/bin/clang -shared

如果您不喜欢{{1}设置环境,请执行以下设置:

export

如果你想知道构建python时默认选项是什么,请使用CC=/usr/local/bin/clang CFLAGS=-I${HOME}/include python setup.py build 。有些标记是python-config --<flag>cflagsldflagslibs

答案 1 :(得分:3)

编译器选项取自CPython的Makefile。它们与用于编译Python的那些相同。您可以在Evert描述的命令行中覆盖它们中的大多数。

全局distutils.cfg是系统管理员可以创建来设置默认选项的东西,而不是随Python安装的文件。