Pythonのsetup.pyスクリプトではgccにフラグを渡す方法は?
-
16-09-2019 - |
質問
私は(とりわけ)CoreFoundationのフレームワークを必要とするCでのPython拡張を書いています。これは罰金コンパイルします:
gcc -o foo foo.c -framework CoreFoundation -framework Python
(「 - フレームワークは、」アップルだけのgccの拡張機能ですが、私はとにかく彼らの特定のフレームワークを使用していますので、それは大丈夫です)。
どのように私は、GCCこのフラグを渡すためにsetup.pyを教えてくれますか?
私はこれを試してみましたが、(それはコンパイルが、私はそれを実行しようとすると、その後、未定義のシンボルを訴える)動作するようには思えない。
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'])])
解決
たぶんあなたも、extra_link_args
を設定する必要がありますか?結果をリンクする際に、extra_compile_args
をソースコードをコンパイルするときextra_link_args
が使用されます。
所属していません StackOverflow