Python: Różnice pomiędzy wersjami
Linia 8: | Linia 8: | ||
''Virtualenv'' to narzędzie służące do tworzenia izolowanych środowisk języka ''Python''. Używanie ''Virtualenv'' rozwiązuje podstawowy problem związany z różnymi wersjami dodatkowych bibliotek języka oraz uprawnień - wirtualne środowiska są tworzone całkowicie w katalogu domowym użytkownika, co (razem z dostarczonymi przez ''virtualenv'' w standardzie narzędziami) pozwala na pełne, samodzielne zarządzanie zainstalowanymi modułami. | ''Virtualenv'' to narzędzie służące do tworzenia izolowanych środowisk języka ''Python''. Używanie ''Virtualenv'' rozwiązuje podstawowy problem związany z różnymi wersjami dodatkowych bibliotek języka oraz uprawnień - wirtualne środowiska są tworzone całkowicie w katalogu domowym użytkownika, co (razem z dostarczonymi przez ''virtualenv'' w standardzie narzędziami) pozwala na pełne, samodzielne zarządzanie zainstalowanymi modułami. | ||
+ | |||
+ | Przed przystąpieniem do instalacji należy włączyć możliwość korzystania z własnego oprogramowania - [[Binexec]]. | ||
{{Notice|1=W tym poradniku utworzono i wykorzystano katalog <code class="directory">/usr/home/''login''/.virtualenvs</code> do zgromadzenia wszystkich utworzonych przez użytkownika wirtualnych środowisk. Nowy katalog można utworzyć za pomocą polecenia <code>mkdir /usr/home/''login''/.virtualenvs</code>.}} | {{Notice|1=W tym poradniku utworzono i wykorzystano katalog <code class="directory">/usr/home/''login''/.virtualenvs</code> do zgromadzenia wszystkich utworzonych przez użytkownika wirtualnych środowisk. Nowy katalog można utworzyć za pomocą polecenia <code>mkdir /usr/home/''login''/.virtualenvs</code>.}} | ||
Linia 42: | Linia 44: | ||
Opuścić dane środowisko można wydając polecenie <code>deactivate</code>. | Opuścić dane środowisko można wydając polecenie <code>deactivate</code>. | ||
+ | |||
+ | === Rozwiązywanie problemów === | ||
+ | Niektóre pakiety (np. Pillow) instalowane przez pip wymagają dodatkowych zmiennych, aby kompilacja przebiegła pomyślnie. Przed uruchomieniem <code>pip install ''pakiet''</code> należy wykonać: | ||
+ | export CFLAGS="-I/usr/local/include" | ||
+ | export CXXFLAGS="-I/usr/local/include" | ||
+ | export MAX_CONCURRENCY=1 | ||
[[Category: Python]] | [[Category: Python]] |
Wersja z 13:56, 11 maj 2015
Python to język programowania wysokiego poziomu. Na serwerach MyDevil.net możliwe jest uruchamianie stron i aplikacji opartych o ten język.
Spis treści
Dostępne wersje
Domyślną wersją języka Python na serwerach MyDevil jest wersja 2.7.8 - wywołanie polecenia python
uruchomi interaktywny interpreter języka właśnie w tej wersji. Oprócz tego dostępne są również polecenia python2.7
, python3.2
, python3.3
oraz python3.4
, służące do uruchamiania interpretera w wersjach: domyślnej (2.7.8), 3.2.5, 3.3.5, oraz 3.4.1.
Virtualenv
Virtualenv to narzędzie służące do tworzenia izolowanych środowisk języka Python. Używanie Virtualenv rozwiązuje podstawowy problem związany z różnymi wersjami dodatkowych bibliotek języka oraz uprawnień - wirtualne środowiska są tworzone całkowicie w katalogu domowym użytkownika, co (razem z dostarczonymi przez virtualenv w standardzie narzędziami) pozwala na pełne, samodzielne zarządzanie zainstalowanymi modułami.
Przed przystąpieniem do instalacji należy włączyć możliwość korzystania z własnego oprogramowania - Binexec.
W tym poradniku utworzono i wykorzystano katalog /usr/home/login/.virtualenvs
do zgromadzenia wszystkich utworzonych przez użytkownika wirtualnych środowisk. Nowy katalog można utworzyć za pomocą polecenia mkdir /usr/home/login/.virtualenvs
.
Tworzenie wirtualnego środowiska
Wirtualne środowisko można utworzyć wykonując w wybranym katalogu polecenie virtualenv
podając nazwę środowiska jako parametr:
$ cd /usr/home/login/.virtualenvs $ virtualenv my-virtualenv New python executable in my-virtualenv/bin/python2.7 Also creating executable in my-virtualenv/bin/python Installing setuptools, pip...done.
Takie wywołanie polecnia tworzy nowe środowisko wirtualne wykorzystując domyślną systemową wersję pythona, tj. 2.7.8. Za pomocą flagi -p
można wskazać inny plik wykonywalny, co w konsekwencji tworzy środowisko wirtualne używając innej wersji języka Python:
$ cd /usr/home/login/.virtualenvs $ virtualenv -p /usr/local/bin/python3.4 my-venv-3.4 Running virtualenv with interpreter /usr/local/bin/python3.4 Using base prefix '/usr/local' New python executable in my-venv-3.4/bin/python3.4 Also creating executable in my-venv-3.4/bin/python Installing setuptools, pip...done.
Aktywacja wirtualnego środowiska
Do uruchomienia skryptu za pomocą interpretera wystarczy podać ścieżkę do nowego pliku wykonywalnego python
(/usr/home/login/.virtualenvs/nazwa_środowiska/bin/python
), jednak w celu ułatwienia korzystania z virtualenv, utworzony został skrypt bin/activate
, którego załadowanie zmodyfikuje środowisko użytkownika w taki sposób, by ułatwić korzystanie z nowego środowiska.
$ source /usr/home/login/.virtualenvs/my-virtualenv/bin/activate (my-virtualenv) $
Po załadowaniu skryptu aktywacyjnego widać, że zmienił się znak zachęty. Na początku została podana nazwa wirtualnego środowiska, w którym użytkownik aktualnie się znajduje. W tym stanie nie trzeba podawać pełnej ścieżki do interpretera, polecenia python
, pip
oraz easy_install
będą wykonywane korzystając aktualnie wybranego środowiska wirtualnego.
Opuścić dane środowisko można wydając polecenie deactivate
.
Rozwiązywanie problemów
Niektóre pakiety (np. Pillow) instalowane przez pip wymagają dodatkowych zmiennych, aby kompilacja przebiegła pomyślnie. Przed uruchomieniem pip install pakiet
należy wykonać:
export CFLAGS="-I/usr/local/include" export CXXFLAGS="-I/usr/local/include" export MAX_CONCURRENCY=1