2011-04-10 5 views
2

나는 크로스 플랫폼에 컴파일해야하는 파이썬 확장 코드를 가지고 있으며 그렇게하기 위해 파이썬 포함 폴더를 찾을 수 있어야합니다. 리눅스와 Mac OSX에서 나는 python-config --include을 할 수 있고 그것은 내게 -I/Library/Frameworks/Python.framework/Versions/6.3/include/python2.6과 같은 것을 준다. 이것은 제 윈도우 파이썬 배포판에 이 없다는 것을 제외하고는 훌륭하고 멋쟁이입니다. 파이썬 코드를 통해 include 폴더가 어디 있는지 생각할 수있는 쉬운 방법이 있습니까?파이썬 발견을위한 크로스 플랫폼 메소드 포함 폴더

try: 
    numpy_include = numpy.get_include() 
except AttributeError: 
    numpy_include = numpy.get_numpy_include() 

파이썬에 대한 유사한 방법은 폴더를 포함 있습니까 : numpy,이 조각은 일을합니까?

+0

실제 포함 폴더를 찾는 방법이 없다고 생각합니다. 파이썬 설정이 존재 하는지를 꼭 알아야 할 것이라고 생각합니다. 그렇지 않다면 다음과 같이 생각할 수있는 많은 다른 경로 이름을 추측하십시오 : |. – JackMc

답변

4

이 작업을 시도 할 수 있습니다 :

>>> from distutils import sysconfig 
>>> sysconfig.get_python_inc() 
'/usr/include/python2.6' 
>>> sysconfig.get_python_inc(plat_specific=True) 
'/usr/include/python2.6' 

참고 : 나는 소스를 보면이를 발견했다.

+0

그리고 파이썬 2.7과 3.2에서,'sysconfig'는'distutils'와는 별개로 표준 라이브러리의 자체 모듈로 확장되고 일반화되었습니다 : http://docs.python.org/library/sysconfig.html, 'sysconfig.get_path ('include')' –