Oto opcje dla virtualenv
$ virtualenv
You must provide a DEST_DIR
Usage: virtualenv [OPTIONS] DEST_DIR
Options:
--version show program's version number and exit.
-h, --help show this help message and exit.
-v, --verbose Increase verbosity.
-q, --quiet Decrease verbosity.
-p PYTHON_EXE, --python=PYTHON_EXE
The Python interpreter to use, e.g.,
--python=python2.5 will use the python2.5 interpreter
to create the new environment. The default is the
interpreter that virtualenv was installed with
(/usr/bin/python)
--clear Clear out the non-root install and start from scratch
--no-site-packages Don't give access to the global site-packages dir to
the virtual environment
--unzip-setuptools Unzip Setuptools or Distribute when installing it
--relocatable Make an EXISTING virtualenv environment relocatable.
This fixes up scripts and makes all .pth files
relative
--distribute Use Distribute instead of Setuptools. Set environ
variable VIRTUALENV_USE_DISTRIBUTE to make it the
default
--prompt==PROMPT Provides an alternative prompt prefix for this
environment
1) To, co chcesz zrobić, to zainstalować Pythona w katalogu, w którym możesz pisać.
Możesz postępować zgodnie z instrukcjami here
.
W przypadku Pythona 2.7.1
Python source
mkdir ~/src
mkdir ~/.localpython
cd ~/src
wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz
tar -zxvf Python-2.7.1.tgz
cd Python-2.7.1
make clean
./configure --prefix=/home/${USER}/.localpython
make
make install
2) Zainstaluj virtualenv
virtualenv source
cd ~/src
wget http://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.5.2.tar.gz#md5=fbcefbd8520bb64bc24a560c6019a73c
tar -zxvf virtualenv-1.5.2.tar.gz
cd virtualenv-1.5.2/
~/.localpython/bin/python setup.py install
3) Utwórz virtualenv za pomocą lokalnego języka Python
virtualenv docs
mkdir /home/${USER}/virtualenvs
cd /home/${USER}/virtualenvs
~/.localpython/bin/virtualenv py2.7 --python=/home/${USER}/.localpython/bin/python2.7
4) Aktywuj środowisko
cd ~/virtualenvs/py2.7/bin
source ./activate
5) Sprawdź
(py2.7)$ python
Python 2.7.1 (r271:86832, Mar 31 2011, 15:31:37)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
(py2.7)$ deactivate
$ python
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
make clean
zanim./configure --prefix=/home/<user>/.localpython
faktyczniemake clean
zwróciłem błąd. 2.virtualenv name -p=/python/path
nie działało, zamiast tegovirtualenv name -p /python/path
działało. Zakładam, że wszystko zależy od wersji virtualenv. Twoje zdrowie!curl gcc build-essential libncursesw5-dev libreadline5-dev libssl-dev libgdm-dev libbz2-dev libc6-dev libsqlite3-dev tk-dev
source
to bashism. Odpowiednik POSIX to.
.Wymagania wstępne:
sudo easy_install virtualenv
sudo pip install virtualenvwrapper
Instalowanie virtualenv w Pythonie2.6:
Możesz ręcznie pobrać, skompilować i zainstalować inną wersję Pythona do
/usr/local
lub innej lokalizacji.Jeśli jest to inna lokalizacja niż
/usr/local
, dodaj ją do ścieżki PATH.Załaduj ponownie powłokę, aby pobrać zaktualizowaną ścieżkę.
Od tego momentu powinieneś być w stanie wywołać następujące 2 pliki binarne Pythona ze swojej powłoki
python2.5
ipython2.6
Utwórz nową instancję virtualenv za pomocą
python2.6
:mkvirtualenv --python=python2.6 yournewenv
źródło
Ta procedura instaluje Python 2.7 w dowolnym miejscu i eliminuje wszelkie bezwzględne odniesienia do ścieżek w
env
folderze (zarządzanym przez virtualenv) . Nawet virtualenv nie jest zainstalowany absolutnie.Zatem teoretycznie możesz upuścić katalog najwyższego poziomu do paczki, rozprowadzać i uruchamiać wszystko skonfigurowane w tarballu na maszynie, która nie ma zainstalowanego Pythona (ani żadnych zależności) .
Kontaktuj się ze mną w razie pytań. To tylko część trwającego, większego projektu, który tworzę. Teraz do kropli ...
Skonfiguruj foldery środowiskowe.
Pobierz Python-2.7.3 i virtualenv bez jakiejkolwiek instalacji systemu operacyjnego root.
Rozpakuj i zainstaluj Python-2.7.3 w katalogu
pyenv
.make clean
jest opcjonalne, jeśli robisz to po raz drugi, trzeci, n-ty ...Stwórz swój virtualenv
Napraw link symboliczny do python2.7 w
env/include/
Napraw pozostałe linki symboliczne Pythona w env. Będziesz musiał usunąć katalogi połączone symbolicznie i odtworzyć je, jak powyżej. Oto składnia wymuszająca tworzenie dowiązań symbolicznych w miejscu.
Test
Aloha.
źródło
Używam virtualenvwrapper i nie chcę modyfikować $ PATH, oto jak:
źródło
Typowe podejście polega na pobraniu źródła, skompilowaniu i zainstalowaniu lokalnie (ale nie bezpośrednio w virtualenv), a następnie utworzeniu nowego virtualenv przy użyciu tej lokalnej instalacji Pythona. W niektórych systemach możliwe jest pobranie i zainstalowanie wstępnie skompilowanego języka Python zamiast budowania ze źródła.
źródło
Obecnie najłatwiejszym sposobem, w jaki znalazłem bardziej zaktualizowaną wersję Pythona, jest zainstalowanie jej przez Conda w środowisku Conda.
Zainstaluj condę (możesz potrzebować do tego virtualenv)
Instalowanie nowej wersji Pythona w środowisku Conda
Dodaję tę odpowiedź tutaj, ponieważ nie jest potrzebne ręczne pobieranie.
conda
zrobi to za Ciebie.Teraz utwórz środowisko dla żądanej wersji Pythona. W tym przykładzie użyję
3.5.2
, ponieważ jest to najnowsza wersja w chwili pisania (sierpień 2016).Stworzy środowisko dla Conda do instalowania pakietów
Aby aktywować to środowisko ( zakładam, że Linux w przeciwnym razie sprawdź dokumentację Conda ):
Teraz zainstaluj to, czego potrzebujesz, za pomocą pip lub conda w środowisku (conda ma lepszą obsługę pakietów binarnych).
źródło
Możesz użyć pyenv.
Istnieje wiele różnych wersji anaconda, jython, pypy i tak dalej ...
https://github.com/yyuu/pyenv
Instalacja tak prosta, jak
pyenv install 3.2.6
...
źródło
Chociaż pytanie konkretnie opisuje instalację 2.6, chciałbym dodać kilka ważnych punktów do doskonałych odpowiedzi powyżej, na wypadek gdyby ktoś zetknął się z tym. Dla przypomnienia, moim przypadkiem było to, że próbowałem zainstalować 2.7 na pudełku Ubuntu 10.04.
Po pierwsze, moją motywacją do metod opisanych we wszystkich odpowiedziach jest to, że instalowanie Pythona z ppa Deadsnake'a zakończyła się całkowitą porażką. Tak więc budowanie lokalnego języka Python jest drogą do zrobienia.
Próbując tak, pomyślałem, że oparcie się na domyślnej instalacji pip (with
sudo apt-get install pip
) będzie wystarczające. Niestety jest to błędne. Okazało się, że dostaję mnóstwo paskudnych problemów i ostatecznie nie jestem w stanie stworzyć virtualenv.Dlatego bardzo polecam lokalną instalację pip z
wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py && python get-pip.py --user
. To powiązane pytanie dało mi tę wskazówkę.Teraz, jeśli to nie zadziała, upewnij się, że jest zainstalowany system
libssl-dev
Ubuntu lubopenssl-dev
CentOS. Zainstaluj je za pomocąapt-get
lub,yum
a następnie ponownie skompiluj Pythona (nie musisz niczego usuwać, jeśli jest już zainstalowany, zrób to na górze).get-pip
narzeka na to, możesz to sprawdzić, uruchamiającimport ssl
na powłoce py.Na koniec nie zapomnij zadeklarować
.local/bin
i lokalnego Pythona do ścieżki, sprawdź za pomocąwhich pip
iwhich python
.źródło
Pełny przewodnik z pyenv
Jeśli pyenv nie jest zainstalowany, zainstaluj go za pomocą pyenv-installera :
Aby użyć dowolnej niestandardowej wersji Pythona, na przykład
3.5.6
użyj następującego:źródło
Nie, ale możesz zainstalować izolowaną kompilację Pythona (taką jak ActivePython ) w swoim
$HOME
katalogu.To podejście jest najszybsze i nie wymaga samodzielnego kompilowania Pythona.
(jako bonus możesz również użyć menedżera pakietów binarnych ActiveState )
źródło
Nie znalazłem odpowiedniej odpowiedzi, więc oto moja opinia, która opiera się na odpowiedzi @toszter, ale nie korzysta z systemu Python (i możesz wiedzieć, nie zawsze jest dobrym pomysłem instalowanie setuptools i virtualenv na poziomie systemu, gdy masz do czynienia z wieloma Konfiguracje Pythona):
Sztuczka polegająca na rozwiązaniu problemu z jajkiem kurzego polega na tym, aby najpierw utworzyć virtualenv bez setuptools, ponieważ w przeciwnym razie zawodzi (nie można znaleźć pip). Możliwe jest bezpośrednie zainstalowanie pip / wheel, ale w jakiś sposób easy_install była pierwszą rzeczą, która przyszła mi do głowy. Skrypt można również ulepszyć, uwzględniając konkretne wersje.
NB. Używanie xz w skrypcie.
źródło
Przede wszystkim dziękuję DTing za świetną odpowiedź. Jest prawie doskonały.
Dla tych, którzy cierpią z powodu braku dostępu do GCC w hostingu współdzielonym, wybierz ActivePython zamiast zwykłego Pythona, o którym wspomniał Scott Stafford. Oto polecenia do tego.
Zapyta Cię o ścieżkę do katalogu Pythona. Wchodzić
Po prostu zamień powyższe na Krok 1 w odpowiedzi DTing, a następnie przejdź do kroku 2. Należy pamiętać, że adres URL pakietu ActivePython może ulec zmianie wraz z nową wersją. Zawsze możesz uzyskać nowy adres URL stąd: http://www.activestate.com/activepython/downloads
Na podstawie adresu URL musisz zmienić nazwę polecenia tar i cd na podstawie otrzymanego pliku.
źródło