Megpróbáltam a szokásos módon, sudo apt-get install python3.6
, de... nos... ez nem működött.
Szóval, hogyan tudnám megoldani? (lehetőleg ne magam építsem meg)
Ubuntu 16.04-et használok.
Ha Ubuntu 14.04-et vagy 16.04-et használsz, használhatod Felix Krull's deadsnakes PPA-ját a https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa címen:
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.6
Alternatívaként használhatja J Fernyhough's PPA-t a https://launchpad.net/~jonathonf/+archive/ubuntu/python-3.6 címen:
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo apt-get update
sudo apt-get install python3.6
Ha Ubuntu 16.10-et vagy 17.04-et használsz, akkor a Python 3.6 az univerzum repositoryban van, így egyszerűen futtathatod:
sudo apt-get update
sudo apt-get install python3.6
A Python 3.6 interpreter meghívásához futtassa a python3.6
parancsot.
Az Ubuntu 17.10 és 18.04 már alapértelmezés szerint a Python 3.6-tal érkezik. Csak futtassa a python3
parancsot, hogy meghívja azt.
A pyenv ajánlom, hogy megoldja a gondjaidat. Ez nem használja az Aptitude-ot, és nem foglalja magában a "saját magad építését", de teljesen automatizált. A Python új (vagy régi) verzióját egyszerűen a pyenv install 3.6.0
parancsával építheted és telepítheted. Minden a te felhasználódként fut, így nem kell aggódnod, hogy elrontod a Python által használt Ubuntu-t magát.
Ráadásul a "Hogyan telepíthetem a Python 3.7-et az apt-get segítségével?" a következő kérdésre is ugyanez a válasz: pyenv update; pyenv install 3.7.0
. Ez általában még a kiadás napján működik, mert nem kell megvárni, hogy valaki más csomagolja az Ubuntura. Lásd az összes telepíthető verziót a pyenv install --list
paranccsal.
Telepítse a CPythonok építéséhez szükséges eszközöket és fejléceket (az egzotikus Pythonoknak, mint a PyPy vagy a Jython, lehetnek más függőségei is). A pyenv a Git-et használja, ráadásul lehetővé teszi a forráságak építését/telepítését is, így telepítheted a 3.8-as verziószámot, ami éppen most van, azaz a CPython master ágát frissen a GitHubról:
sudo apt-get install -y git
sudo apt-get install -y build-essential libbz2-dev libssl-dev libreadline-dev \
libffi-dev libsqlite3-dev tk-dev
# opcionális tudományos csomagfejlécek (Numpy, Matplotlib, SciPy, stb. esetén)
sudo apt-get install -y libpng-dev libfreetype6-dev
Futtassuk a telepítő szkriptet (telepíti a pyenv-et és néhány nagyon hasznos pyenv plugint az eredeti szerzőtől; lásd itt továbbiakért).
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
Adj hozzá init sorokat a ~/.profile
vagy ~/.bashrc
fájlodhoz (a telepítő szkript végén említi):
export PATH="$HOME/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
Indítsa újra a héját (close & open vagy exec $SHELL
) vagy töltse be újra a profilszkriptet. (pl. source ~/.bashrc
-vel)
Kész!
Ahhoz, hogy ne nyúlj a rendszer Pythonjához (általában rossz ötlet; az OS-szintű szolgáltatások támaszkodhatnak bizonyos speciális könyvtárverziókra, stb.), készítsd el a saját környezetedet, ez egyszerű! Még jobb, nincs sudo
, mert vagy pip
telepít!
Telepítse az Ön által preferált Python verziót (ez letölti a forrást és elkészíti a felhasználó számára, nincs szükség bemenetre).
pyenv install 3.6.0
Legyen egy virtualenv, hogy később, ha akarsz, készíthess másokat is.
pyenv virtualenv 3.6.0 general
Tegyük globálisan aktívvá (a felhasználó számára).
pyenv global general
Csinálj, amit akarsz a Python/pip, stb. Ez a tiéd.
Ha később ki akarod takarítani a könyvtáraidat, törölheted a virtualenv-t (pyenv uninstall general
) vagy készíthetsz egy újat (pyenv virtualenv 3.6.0 other_proj
). A környezetek könyvtáranként is aktívak lehetnek: a pyenv local other_proj
egy .python-verzió
fájlt dob az aktuális mappádba, és amikor ebből vagy alatta meghívod a Pythont vagy a pip által telepített Python segédprogramokat, a pyenv fogja őket shimmelni.
bash: pyenv: command not found
, fish: Ismeretlen parancs 'pyenv'
$PATH
bejegyzést, lennie kell egy olyan bejegyzésnek, ami valami olyasmire végződik, mint .pyenv/bin
. Ha ez hiányzik, győződj meg róla, hogy követted a #3 És #4 (indítsd újra a héjad) pontot a fenti Install pyenv alatt.pyenv: nincs ilyen parancs 'virtualenv'
pyenv parancsok
.Egy alternatív útvonal, ha nem találsz működő repos-t, megpróbálhatod magad fordítani a forrásból. A forráskódot a letöltési oldalon találod. Ezután töltsd le és csomagold ki a tarballt; például a Python-3.6.1.tgz
.
A tgz fájl kicsomagolásának folyamata a következő:
tar -xvzf /path/to/yourfile.tgz
Ha már a fájl elérési útvonalán van, ahová a fájlt kicsomagolták, futtassa a következőt:
./configure
make
make altinstall
És remélhetőleg ez megoldja a problémát.