2012-06-20 5 views
0

나는 virtualenv를 설치하고 있으며 로컬 사이트 패키지에 액세스하기 전에 시스템 사이트 패키지에 액세스하는 것으로 보입니다. Ipython은 다른 프로그램에서 필요하므로 자동으로 설치됩니다. 이것은 최근에 일어난 일이며 이제는 환경에서 로컬로 발견 된 버전 대신 해당 버전을 찾습니다.우분투 12.04에서 python virtualenv 만들기 로컬 venv 패키지 이전에 설치된 python 패키지

글로벌 패키지보다 먼저 환경 내에서 로컬 패키지를 사용하도록 환경을 알려야합니까? 환경 내에서 Path 변수를 설정할 수 있습니까?

이전에 오류가 발생하여 .bashrc에 PYTHON_PATH 변수가 설정되어 있었기 때문에 로컬에서 찾기 전에 시스템 내장 디렉토리를 검색했습니다. virtual_env의 목적을 물리 치는 종류.

+0

'source/path_to_virtualenv/bin/activate'을 사용하여 virtualenv를 활성화하셨습니까? – Enrico

+0

설치하는 동안 --no-site-packages 옵션을 사용하십시오. –

+0

Ipython 셸에서이 문제가 발생합니까? 그렇다면 virtualenv 내부에 Ipython을 설치하고 사용하십시오. – wrongite

답변

0

distribute + pip를 사용하여 종속성을 관리하는 경우 pip -l freeze > requirements.txt을 실행하기 만하면 모든 로컬 패키지의 종속성 목록이 만들어집니다. 다음으로 현재 가상 노드를 제거합니다. virtualenv 명령을 다시 실행하고 --no-site-packages 옵션을 지정하십시오. 새 환경을 활성화하고 마지막으로 pip install -r requirements.txt을 실행하여 요구 사항 파일에서 모든 종속성을 다운로드하십시오.

+0

이렇게하면 파이썬 및 패키지 관리자에서 설치 한 다른 모든 패키지에 대한 빌드 요구 사항이 모두 설치되어 있는지 확인해야합니다. 예를 들어,'psycopg'가 설치되어 있다면 virtualenv에 설치하기 전에'apt-get psycopg'을 먼저 설치해야합니다. 그렇지 않으면 설치가 실패합니다. –

관련 문제