2016-10-21 9 views
1

https://wiki.python.org/moin/WindowsCompilers은 이제 distutils 기반 패키지 (from distutils.core import setup으로 시작)의 지침을 setuptools 기반의 패키지 (from setuptools import setup으로 시작)에 대한 지침으로 완전히 대체했습니다.distutils 기반 setup.py에서 C 확장을 사용하여 작업 할 때 권장되는 방법은 무엇입니까?

그러나 distutils 기반의 setup.py을 실행하면 setuptools이 사용되지 않으므로 페이지의 지침이 작동하지 않습니다.

pip이처럼, setuptools을 통해 distutils 기반의 스크립트를 실행하는 것이 가능하지만 it requires the following code : 그들은 아마도 나, 명령 줄에 때마다 그 입력 기대할 수 없다

python -u -c "import setuptools, tokenize;__file__=<setup.py full path>; 
    exec(compile(getattr(tokenize, 'open', open)(__file__).read() 
    .replace('\\r\\n', '\\n'), __file__, 'exec'))" <setup.py arguments> 
이 지금 할 수있는 그들?

+0

난 당신이 [comp.lang.python]에서 (https://groups.google.com/forum/#!topic/comp.lang.python/kMUk1HdLTG8)뿐만 아니라이 질문을 참조하십시오. 나는 이것을 최근에 조사하여 sdist보다는 바퀴를 배포하는 것이 좋습니다. 이것은 Windows에서는 합리적인 것처럼 보입니다. – ddbug

답변

0

물어볼 때부터 https://wiki.python.org/moin/WindowsCompilersdistutils에 대한 안내가 포함되도록 업데이트되었습니다. 요점은 다음

  • distutils

    은 (일반적으로, 컴파일러는 비주얼 스튜디오의 대응 버전 포함) 기본 컴파일러 설정을 검출한다. 이러한 설정에 해당하는 섹션에는 distutils이 명시되어 있습니다.

  • 다른 설정의 경우 "Windows SDK 명령 프롬프트"에서 실행할 수 있으며 DISTUTILS_USE_SDK 환경 변수를 설정하여 환경 설정 변수에 의존해야합니다.

    • MS의 SDK 명령 프롬프트 스크립트에서 설정 한 MsSdk 환경 변수를 확인합니다.