2010-08-06 5 views
4

파이썬 패키지가 여러 개의 데비안 패키지 (각각 "main"패키지의 서브 패키지를 포함하고 있음)에서 "생성"되어야하는 더 큰 프로젝트에서 setuptools에 문제가 있습니다. 그래서 우리는 "setup.py install"을 사용하는 대신 manully 파일을 설치하기로 결정했으나, 사용할 위치를 확실히 알지 못했습니다. 우리는 처음에 우리가 설치 한 다른 것들을 위해 이미 사용하고있는/usr/share 디렉토리를 사용했다. 이것은 응용 프로그램을 시작하기 전에 PYTHONPATH를 사용해야한다는 사실을 제외하고는 잘 작동합니다.수동으로 파이썬 파일을 설치하는 곳

대신 패키지를 설치할 수있는 기본 sys.path에있는 공간이 있습니까? 나는 /usr/lib/python2.6/dist-packages에 대해 생각하고 있었다. (파일들이 setuptools를 사용할 때 끝나야한다. shouldnt?) 그런데 나는 쓰고 싶지 않다. 이 사용자 정의 설치 스크립트와 함께 ... 또한 우분투가 2.7로 전환하면 어떻게해야합니까? 어떤 "모범 사례"어떻게 이런 식으로해야합니까? (

답변

2

파이썬 패키지를 설치할 필요가있는 곳을 말하면 어렵습니다. 실제로 어디서나 설치할 수 있습니다. 내 생각에 가장 좋은 장소는 apt-get (aptitude etc ...)에 의해 설치되지 않은 경우를 대비하여/usr/local/share/YOURPACKAGENAME에 넣는 것이다. 어느 경우이든 작은 래퍼 당신 주위에 당신의 패키지가있는 경로를 "sys.path"변수에 삽입하는 파이썬 스크립트 (예 : "yum"for Ubuntu)는 "/ usr/share/yum" -cli "스크립트에는"/ usr/bin/yum "스크립트에 다음 행이 포함되어 있습니다.

#!/usr/bin/python 

... 

sys.path.insert(0, '/usr/share/yum-cli') 
try: 
    import yummain 
    yummain.user_main(sys.argv[1:], exit_code=True) 
except KeyboardInterrupt, e: 
    ... 

Alter 기본적으로 PYTHONPATH 환경 변수를 설정해야합니다. 거기에 아무런 문제가 없습니다.

+0

"아무 문제가 없습니다." 아니, 그렇지 않아. 하지만 지루하고 오류가 발생하기 쉽습니다.) sys.path 수정도 사용합니다. :) – c089