2013-05-09 63 views
22

Tôi cố gắng để lắp đặt virtualenv và/hoặc virtualenvwrapper trên Mac OSX 10.8.3pip: Không thể tìm thấy virtualenv kích hoạt (bắt buộc)

tôi đã chiến đấu với trăn trong hai ngày qua. Cuối cùng tôi đã có thể cài đặt python 2.7.4 bằng cách sử dụng brew. Trước khi tôi cài đặt virtualenv bằng easy_install. Sau đó, tôi đã cố gắng để gỡ bỏ nó, cố gắng để có được máy tính của tôi trong tình hình tương tự như một trong những đồng nghiệp của tôi. Có lẽ tôi đã gỡ cài đặt nó thành công, có thể không. Tôi không biết làm thế nào để kiểm tra nó. Bây giờ tôi phải cài đặt virtualenv sử dụng -

pip install virtualenv 

Nhưng nó mang lại cho tôi -

Could not find an activated virtualenv (required). 

pip install virtualenvwrapper cho chính xác đầu ra tương tự.

Cũng biến: PIP_RESPECT_VIRTUALENV là null:

echo $PIP_RESPECT_VIRTUALENV 

Làm thế nào tôi có thể giải quyết vấn đề này?

Cảm ơn

+0

Phiên bản pip và python nào? –

+0

python là 2.7.4. Và pip là cái bên trong nó. Cam ơn vi đa hỏi. –

Trả lời

61

Mở tập tin ~/.bashrc của bạn và xem nếu dòng này là có -

export PIP_REQUIRE_VIRTUALENV=true 

Nó có thể gây ra những rắc rối. Nếu nó ở đó, thay đổi nó để false và chạy -

source ~/.bashrc 

Nếu không, hãy chạy export PIP_REQUIRE_VIRTUALENV=false từ thiết bị đầu cuối.

+0

Thật vậy, xuất khẩu dòng PIP_RESPECT_VIRTUALENV = true đã có. Vì vậy, tôi nhận xét nó. Sau đó, nguồn chạy tập tin một lần nữa, nhưng nó vẫn sẽ không hoạt động. Vì vậy, tôi đã mở một thiết bị đầu cuối mới và giờ nó đã hoạt động.Cảm ơn nhiều. –

+1

Phải, nó phải được đặt thành false cho tôi. – cbron

+3

Đối với bất kỳ ai khác gặp phải điều này: Xin lưu ý sự khác biệt giữa 'PIP_RESPECT_VIRTUALENV' (như đã đề cập trong câu hỏi gốc) và' PIP_REQUIRE_VIRTUALENV', là giải pháp được đề cập ở trên. – yvandermeer

2

@Bibas có; +1 để tìm kiếm export PIP_REQUIRE_VIRTUALENV=true trong ~/.profile hoặc ~/.bashrc. Bạn có thể xác nhận cài đặt trong trình bao hiện tại của mình với env |grep PIP_REQUIRE_VIRTUALENV.

Cài đặt này là kiểm tra an toàn tốt; thường xuyên hơn không, bạn sẽ muốn cài đặt mọi thứ vào virtualenvs. Tuy nhiên, đôi khi bạn làm muốn làm việc với con trăn toàn cầu/hệ thống. Trong những trường hợp đó, hãy xem --isolated:

Chạy pip ở chế độ riêng biệt, bỏ qua biến môi trường và cấu hình người dùng.

$ pip install --upgrade pip 
Could not find an activated virtualenv (required). 
$ pip install --upgrade pip --isolated 
Requirement already up-to-date: pip in /usr/local/lib/python2.7/site-packages 
$ pip freeze --isolated 
... 
3

Một giải pháp bổ sung cho những người đã trình bày là để thêm một lệnh shell mà sẽ cho phép bạn cài đặt các gói py bằng cách tạm thời trọng các thiết lập mặc định. Thêm số này vào ~/.profile, ~/.bashrc hoặc bất cứ nơi nào bạn duy trì xuất/cài đặt của trình bao (trong trường hợp của tôi là ~/.zshrc).

syspip(){ 
    PIP_REQUIRE_VIRTUALENV="" pip "[email protected]" 
} 

Với bổ sung đơn giản này, bạn có thể cài đặt các gói pip vào hệ thống thông qua syspip install <package>.

Các vấn đề liên quan