En son Python sürümünü Debian'a ayrı olarak nasıl kurarım ya da güncelle


35

Hala Linux için yeniyim, bu yüzden hala çalıştırılabilir dosyaların ve kütüphanelerinin nerede olduklarını ve paketlerin nasıl kurulduğunu anlamaya çalışıyorum.

  • Python 2.7.3 (varsayılan)
  • Python 2.6.8

Yani dizinde /usr/bin/, terminalden çağırabileceğim bu dosyalar var:

  • python (python2.7'ye bir bağlantıdır)
  • python2 (ayrıca python2.7'ye bir bağlantı)
  • python2.6 (Python 2.6.8 çalıştırılabilir)
  • python2.7 (Python 2.7.3 çalıştırılabilir)

ve içinde /usr/lib/ana klasörler:

  • python2.6
  • python2.7

Şu anda en son Python sürümü kurmak istediğim 2.7.6'dır, ancak nasıl yapabileceğimi bilmiyorum, apt-get kullanarak denedim:

apt-get install python

çıktılar python is already the newest version..

Peki Python'un en son sürümünü nasıl kurabilirim? üzerinde Python indirme sayfasına Kaynak tar dosyasını nasıl başka bir klasör olması gibi ayrı ayrı yüklemek için kullanabilirsiniz yoktur /usr/lib/gibi python2.7.6ve yapmak pythonbağlantıyı /usr/bin/yeni yürütülebilir noktaya, ya da herhangi bir şey kırmayacak belki geçerli sürümünü yükseltme .


Python 2.7.6'yı test / dengesizlikten geri alabilir ve curent 2.7.3 ile değiştirebilirsiniz. Bu büyük olasılıkla size herhangi bir soruna neden olmaz. Olursa, kolayca geri dönebilirsiniz.
Faheem Mitha

Hatta kurulumunu yapmadım, Debian'ın yeni kurulumunu yaptım ve komut satırından "python" yazdım ve python3 kabuğuyum.
frozenjim

Yanıtlar:


16

Muhtemelen Python'u kurmak için virtualenvya pyenvda sistem dışı başka bir yöntem arıyor olabilirsiniz . APT (Advance Package Tool) yöntemini kullanarak dpkg, sistemin tüm parçalarının uyum içinde çalıştığından emin olabilirsiniz, bu nedenle python'u, istediğiniz zaman arayabileceğiniz diğer tüm programlardan gizlenmiş ayrı bir yola yüklemek isteyebilirsiniz; Amacı pyenv/ virtualenv. Bu, python'un en son versiyonunun sistemi bozmadan nasıl kurulacağını cevaplar .

BTW, Debian'ın madison'daki en son python sürümünü kontrol ederken, tarihteki en son python 2 sürümünü de görebilirsiniz:

  ~  apt-cache policy python
python:
  Installed: 2.7.5-5
  Candidate: 2.7.5-5
  Version table:
 *** 2.7.5-5 0
        500 http://ftp.us.debian.org/debian/ testing/main i386 Packages
        100 /var/lib/dpkg/status

(Pythonbrew artık korunmaz).


ok pip ve virtualenv'i root olarak kurdum, peki yeni bir Python versiyonuyla nasıl sanal bir ortam oluşturabilirim? bildiğim kadarıyla ilk kurulum için yeni sürüme ihtiyacımız var, değil mi?
Pierre

1
@Peter, ilk adımın bu olduğunu düşünüyorum pyenv install 2.7.6. Tüm sürümleri kontrol edebilirsinizpyenv install -l
Braiam

27

Pek çok arama işleminden sonra Python'u kaynaktan kurmaya karar verdim, bu yüzden Python indirme sayfasından sıkıştırılmış kaynak tarball dosyasını indirdim , şimdi build-essentialkaynak dosyaları derleyebilmek için paketi kurmamız gerekiyor :

apt-get install build-essential

Ayrıca bazı Python modülleri için gerekli olan bu geliştirme paketlerini yüklememiz gerekir:

libbz2-dev
libsqlite3-dev
libreadline-dev
zlib1g-dev
libncurses5-dev
libssl-dev
libgdbm-dev

daha sonra indirilen kaynak dosyayı açacağız:

tar zxf Python-2.7.6.tgz

sonra cdayıklanan dizine giriyoruz:

cd Python-2.7.6

ve Python belgelerinde verilen talimatları takip edin :

./configure --prefix=/opt/python
make
make install # <- in the docs but don't execute: use checkinstall

Daha /opt/pythonönce oluşturduğum dizinin altına kurmayı seçtim , ayrıca daha sonra kolayca kaldırabilmem için bir .deb dosyası oluşturmak için checkinstall paketini kullandım, ilk önce onu yükleyelim:

apt-get install checkinstall

ve son satırı şu make installşekilde değiştir:

checkinstall

şimdi yeni bir python kurulumum var /opt/python/lib/python2.7ve ikili dosya içeride /opt/python/bin/python2.7.

Şimdi /opt/python/bin/python2.7bu Python sürümünü kullanmak için komut satırında çalışabilirim , ayrıca bu yürütülebilir dosyaya bir link oluşturabiliriz, böylece tam yolu yazmayız, adlandırdım python2.7.6.

ln -s /opt/python/bin/python2.7 /usr/local/bin/python2.7.6

Ayrıca dizin /opt/python/bindaha sonra pipve çalıştırdığınız virtualenvdiğer modüller gibi çalıştırılabilir dosyaları da içerecek, böylece onu PATH ortam değişkenine ~/.profileekleyebilir , düzenleyebilir ve ekleyebiliriz:

PATH="$PATH:/opt/python/bin"

ve koş:

source ~/.profile

Bunun içinde olanlar gibi çalıştırılabilir adlarını içerdiğinden yolu sonuna dek eklenir /usr/bingibi python, python2ve python2.7biz daha fazla öncelik tutmak böylece /usr/bin.


Şimdi, yeni pythonunuzu apt-get yolu ile kurulmuş modülleri görecek şekilde nasıl yapılandıracağınızı biliyor musunuz?
elsurudo

Maalesef Python 2.6 için, örnek derleme Debian 8 (Jessie) düzgün çalışmıyor ama ben den Eski paketleri kullanabilmek için olduğunu, en azından bir Ahududu Pi, bulundu packages.debian.org . Yapının gerekli olduğunu zaten varsayarsak, şimdiden libdb, python2.6-minimal, python2.6, libpython2.6, python2-6-dev gibi bir dpkg -işey olduğunu ancak neye ihtiyacınız olduğunu söyleyeceğiz.
Charlie Clark,

1
@elsurudo Bu gerçekten mantıklı olmaz, çünkü modüller yeni sürümünüzde desteklenmiyor olabilir. Python'unuz üzerinde tam kontrol istiyorsanız (kaynaktan derlerken yaptığınız gibi), modülleri de ayrı olarak kurmak isteyeceksiniz.
üçlü

-1

kullanabilirsiniz:

aptitude install python3.5  

veya, bir yetenek yüklemediyseniz, aşağıdakileri kullanarak yükleyebilirsiniz:

apt-get install aptitude
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.