[Kasım 2019] Python 3.8 tabanlı Arch Linux sistemime bir Python 3.7 ortamı (env) kurmam gerekiyordu. Python 3.7 artık sistemde değildi, bu yüzden ihtiyacım olan bir paketi yüklemek için Python'u eski sürüme geçiremedim.
Ayrıca, bu paketi / Python 3.7'yi sanal bir ortamda (venv) kullanmak istedim. Ben böyle yaptım.
Python sürümü kaynak dosyalarını indirin:
Python 3.7.4 kaynak dosyalarını
https://www.python.org/downloads/source/
için
/mnt/Vancouver/apps/python_versions/src/Python-3.7.4.tgz
Daha sonra bu arşivi (kaynak dosyaları)
/mnt/Vancouver/apps/python_versions/src/Python-3.7.4/
Kurulum:
[Not: benim sistemimde env, bir venv değil.]
cd /mnt/Vancouver/apps/python_versions/src/Python-3.7.4/
time ./configure ## 17 sec
time make ## 1 min 51 sec
time sudo make install ## 18 sec
time make clean ## 0.3 sec
Yüklü Python sürümlerini inceleyin:
$ which python
/usr/bin/python
$ python --version
Python 3.8.0
$ which python3.7
/usr/local/bin/python3.7
$ python ## Python 3.8 [system / env]
Python 3.8.0 (default, Oct 23 2019, 18:51:26)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
$ python3.7 ## newly-installed Python 3.7 package
Python 3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.version)
3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0]
>>>
$ python3.7 --version
Python 3.7.4
Belirli bir Python sürümü için venv nasıl oluşturulur:
https://docs.python.org/3/tutorial/venv.html
12.2. SANAL ORTAMLAR OLUŞTURMA
Sanal ortamlar oluşturmak ve yönetmek için kullanılan modül denir venv
. venv
genellikle mevcut olan Python'un en son sürümünü yükler. Sisteminizde Python'un birden çok sürümü varsa, python3'ü veya istediğiniz sürümü çalıştırarak belirli bir Python sürümünü seçebilirsiniz.
Sanal ortam oluşturmak için, yerleştirmek istediğiniz dizine karar verin ve venv modülünü dizin yoluyla bir komut dosyası olarak çalıştırın:
python3 -m venv tutorial-env
Bu, tutorial-env
yoksa dizini oluşturur ve içinde Python yorumlayıcısının, standart kütüphanenin ve çeşitli destek dosyalarının bir kopyasını içeren dizinler oluşturur. ...
Python 3.7 venv [bir Python 3.8 işletim env / sistemi üzerinde] oluşturun:
python3.7 -m venv ~/venv/py3.7 ## create Python 3.7-based venv
source ~/venv/py3.7/bin/activate ## activate that venv
deactivate ## deactivate that venv (when done, there)
Eklenme tarihi ~/.bashrc
:
alias p37='echo " [Python 3.7 venv (source ~/venv/py3.7/bin/activate)]" && source ~/venv/py3.7/bin/activate'
Test Python 3.7 venv:
$ p37
[Python 3.7 venv (source ~/venv/py3.7/bin/activate)]
(py3.7)$ python --version
Python 3.7.4
(py3.7)$ python
Python 3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print(sys.version)
3.7.4 (default, Nov 20 2019, 11:36:53)
[GCC 9.2.0]
>>>