2010-01-31 23 views
70

Tôi có virtualenv được tạo cho Python 2.5 và muốn "nâng cấp" nó lên Python 2.6.Virtualenv hiện có có thể được nâng cấp một cách duyên dáng không?

Sau đây là cách nó ban đầu được thiết lập:

virtualenv --no-site-packages -p python2.5 myenv 

bây giờ tôi chạy virtualenv trong cùng thư mục để nâng cấp:

virtualenv --no-site-packages -p python2.6 myenv 
... 
Not overwriting existing python script myenv/bin/python (you must use myenv/bin/python2.6) 
... 
Overwriting myenv/bin/activate with new content 

Các python mặc định vẫn là 2.5, mặc dù tôi cũng có thể chỉ định 2.6. Có cách nào để xóa 2.5 hoàn toàn và có 'bin/python' điểm đến 2,6 thay thế không?

Trả lời

47

Bạn có thể dùng virtual 2.6 virtualenv để "revirtual" thư mục hiện có. Bạn sẽ phải cài đặt lại tất cả các mô-đun bạn đã cài đặt. Tôi thường có một thư mục ảo để phát triển một mô-đun, và virtualenv cùng một thư mục với nhiều phiên bản của Python, và nó hoạt động tốt. :)

+1

Cảm ơn! Tôi đã thử phương pháp của bạn và thấy rằng kịch bản 'kích hoạt' được cập nhật, nhưng phiên bản cũ vẫn còn (vui lòng xem câu hỏi đã được sửa đổi). Bạn có thể cung cấp một ví dụ? –

+10

bạn chỉ có thể loại bỏ các bin/python thực thi trong virtualenv trước khi chạy lại virtualenv với python 2.6. –

+0

Hoàn hảo! Cảm ơn! –

4

Bạn nên tạo một mới virtualenv sử dụng python2.6 và sau đó, sau khi kích hoạt các env mới, sử dụng python2.6easy_install của nó để cài đặt phiên bản mới của bất kỳ gói trang web mà bạn cần. Cẩn thận rằng tên đường dẫn đến virtualenv được lưu trữ thành nhiều tệp khác nhau trong môi trường, vì vậy, khi bạn sẵn sàng chuyển sang nó, hãy thay đổi tập lệnh khởi động của bạn và tham khảo đường dẫn mới virualenv hoặc rất cẩn thận khi sao chép nó qua thư mục cũ và sửa đổi tên đường dẫn bên trong thư mục đó.

2

Cài đặt Python thứ hai trên CentOS

  1. tải python
  2. cài đặt để diff địa phương

    configure --prefix=/opt/virtualenv/python 
    make && make install 
    
  3. tạo env ảo sử dụng python mới

    virtualenv /opt/virtualenv --python=/opt/python276/bin/python 
    

    lưu ý : nếu cần nó có thể là don e với một người dùng khác nhau

    chown pyuser -R /opt/virtualenv 
    su - pyuser 
    source /opt/virtualenv/bin/activate 
    python -v 
    
  4. Tạo env ảo:

    virtualenv /opt/virtualenv 
    su - infograficos 
    source bin/activate 
    
  5. Install pip với python 2,7 (bên virtualenv)

    easy_install pip 
    
0

Nếu bạn đang sử dụng hệ điều hành X, hãy thử this nếu bạn muốn nâng cấp Python lên phiên bản tăng nhẹ (ví dụ: 2.7.6 đến 2.7.8) trong khi vẫn giữ thư viện của bên thứ ba hoạt động.

Nó hoạt động cho tôi trên 5 môi trường ảo khác nhau với cài đặt Django.

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