Debian'e Python yazılımının yeni ve eski sürümleri yüklensin mi?


12

Debian'a (jessie) ilave python sürümlerini nasıl yükleyebilirim. Ubuntu'da, komutta sürüm adı ile (örneğin python33python 3.3 için) istediğiniz herhangi bir python sürümünü verecek "deadsnakes" PPA'yı kullanabilirim . Bu, hepsini birbirinin yanına kurmamı sağlıyor. Sanal paketleri, sistem paketleriyle uğraşmadan belirli sürümler için belirli python paketleri yüklemek için kullanabilirim. Bazı python kitaplıklarını koruyorum ve python'un birçok sürümü üzerinde çalışması gerekiyor. Yüklü python ikili varsa, tox her bir python sürümü için virtualenvs kullanmaya özen gösterir.

Peki Ubuntu'nun deadsnakes PPA'sının debian eşdeğeri nedir?

GÜNCELLEME Python kurmak istiyorum: 2.6, 2.7, 3.3, 3.4 ve 3.5.


Yüklemek istediğiniz Python sürümlerini belirtebilir misiniz? Bence Jessie'nin birkaç farklı versiyonu var.
Faheem Mitha

Bence muhtemelen sadece çeşitli Python sürümlerini kaynaktan yüklemek daha iyidir.
Celada

Yanıtlar:


9

PPA'yı kullanma

Debian'daki PPA'yı kullanabilirsiniz. Debian sürümünüzden biraz önce gelen bir Ubuntu sürümü seçin ve gerekli tüm kitaplıklara sahip olmalıdır. Hışıltı için, oneiric PPA iyi görünüyor (ancak daha yeni Python sürümleri yok). Jessie için güvenilir PPA çalışmalıdır.

Debian'a bir PPA eklemek için aşağıdakileri /etc/apt/sources.list.d/deadsnakes.listiçeren bir dosya oluşturun

deb http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu trusty main 
deb-src http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu trusty main 

İndir PPA imzalama anahtarı ile

gpg --keyserver keyserver.ubuntu.com --recv-keys DB82666C

sonra anahtarı APT anahtar veritabanına

gpg --export DB82666C | sudo apt-key add -

Son olarak apt-get updateistenen paketleri çalıştırın ve kurun.

PPA'yı bazı nedenlerle çalıştıramazsanız (belki de sahip olduğunuz kitaplıklarla çalışan bir sürüm bulamazsınız), kaynağı indirebilir ve dağıtımınız için yeniden derleyebilirsiniz.

Köklü bir sistem kullanma

Ne genellikle diğer sürümleri ile uyumluluk testleri yapmak bir eski veya yeni dağılımları çalıştırmaktır chrooted sisteme. Örneğin, ilgilendiğiniz Python sürümleriyle Ubuntu'nun çeşitli sürümlerini yükleyebilir veya bir chroot'a güvenilir bir şekilde yükleyebilir ve PPA'yı buraya yükleyebilirsiniz. Daha fazla bilgi için schroot kılavuzuma bakın .


1
Sorunlara veya diğer çakışmalara neden olabileceğinden Debian'da Ubuntu PPA'larını kullanmaktan kaçınmalısınız. ( pyenvSanal ortamı birden fazla Python sürümü için kullanmak da mümkündür )
Thomas Ward

Mevcut debian testine bu yaklaşımı kullanarak python 2.6, 2.7, 3.1, 3.2, 3.3, 3.5 ve 3.6'yı başarıyla kurduğumu doğrulayabilirim . Karşılaştığım tek uyarı, libssl1.0.0burada bulduğum eski bir sürümünü kazmam gerektiğiydi : Packages.debian.org/jessie/libssl1.0.0 . Ayrıca güvenilir hala çalışıyor inanıyorum olsa da paketlerin (güncel lt) xenial (16.04) sürümlerini kullandım .
Att Righ

1

Ubuntu'nun deadsnakes PPA'sına eşdeğer bir Debian olmadığını söyleyebilirim

Debian altında, Ubuntu paketlerinin veya depolarının kullanılması önerilmez. Bu yazı arama motorlarında göründüğü gibi, burada bir Debian sistemi için daha az tehlikeli bir cevap öneriyorum.

Python'u manuel olarak kurmak mümkündür. Örnek olarak, 3.5.2 sürümünü yüklemek için aşağıdaki talimatları kullanabilirsiniz

Ön şartlar

Bağımlılıkları yükleyin:

sudo apt-get update && sudo apt-get install libssl-dev openssl

Yapı Python

Komuttaki --prefixparametreyi kullanarak belirli bir klasörde Python oluşturabilirsiniz configure:

wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz
tar zxf Python-3.5.2.tgz
cd Python-3.5.2/
./configure --prefix=/usr/local
make
sudo make install

Bunun yerine, /usr/localbaşka bir temel dizin kullanılabilir. Örnek olarak:

sudo mkdir /opt/python-3.5.2
./configure --prefix=/opt/python-3.5.2

Python sürümünü seçme

PATH ortam değişkenini kullanmak, kullanılacak doğru python sürümünü seçmeye yardımcı olabilir. Ancak semboller de kullanılabilir:

sudo ln -s /opt/python-3.5.2/bin/python3.5 /usr/local/bin/python3
sudo ln -s /opt/python-3.5.2/bin/pip3.5 /usr/local/bin/pip3

-fSeçeneği kullanmak , mevcut simgeleri değiştirmenize olanak tanır

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.