문제

Corefoundation 프레임 워크가 필요한 C로 파이썬 확장을 작성하고 있습니다. 이것은 다음과 같이 잘 컴파일합니다.

gcc -o foo foo.c -framework CoreFoundation -framework Python

( "-프레임 워크"는 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'])])
도움이 되었습니까?

해결책

어쩌면 설정해야 할 수도 있습니다 extra_link_args, 도? extra_compile_args 소스 코드를 컴파일 할 때 사용됩니다. extra_link_args 결과를 연결할 때.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top