【发布时间】:2010-12-13 04:19:26
【问题描述】:
我正在用 C 语言编写一个 Python 扩展,它需要 CoreFoundation 框架(除其他外)。这编译得很好:
gcc -o foo foo.c -framework CoreFoundation -framework Python
(“-framework”是 Apple 专用的 gcc 扩展,但没关系,因为我一直在使用他们的特定框架)
我如何告诉 setup.py 将此标志传递给 gcc?
我试过这个,但它似乎不起作用(它可以编译,但是当我尝试运行它时会抱怨未定义的符号):
from distutils.core import setup, Extension
setup(name='foo',
version='1.0',
author='Me',
ext_modules=[Extension('foo',
['foo.c'],
extra_compile_args=['-framework CoreFoundation'])])
编辑:
这似乎有效:
from distutils.core import setup, Extension
setup(name='foo',
version='1.0',
author='Me',
ext_modules=[Extension('foo',
['foo.c'],
extra_link_args=['-framework', 'CoreFoundation'])])
【问题讨论】:
标签: python distutils python-c-api