17
我正在寫C需要CoreFoundation框架(除其他外)的Python擴展。編譯沒有用:如何在Python setup.py腳本中將標誌傳遞給gcc?
gcc -o foo foo.c -framework CoreFoundation -framework Python
(「-framework」是一個蘋果只有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'])])
謝謝,但我試過這個並得到同樣的問題。 – Michael 2009-11-05 01:23:33
對不起,在刪除「構建」目錄並重新構建它似乎工作。謝謝! – Michael 2009-11-05 01:29:36
找到這個後,我發現有用的參數列表有幫助。 http://docs.python.org/distutils/apiref.html?highlight=extension#distutils.core.Extension感謝您指點正確的方向。 – Joel 2012-03-01 17:44:07