Czy w przyszłości python2.7 będzie dostępny w wersji 10.04?
27
Ponieważ Ubuntu 10.04 jest wersją LTS, czy będzie obsługiwał Python 2.7 jako domyślną wersję opiekuna pakietu, czy przynajmniej będzie miał pakiet Python2.7 w przyszłości?
Ponieważ będzie to ostatnie główne wydanie Pythona 2.x i ma pozostać na miejscu przez długi czas, postanowiłem go użyć. Kompilowałem go ze źródła (oczywiście po zbudowaniu deps), ale od czasu do czasu znajduję małe problemy.
Czy mogę bezpiecznie zdefiniować mój skompilowany Python jako domyślny, ponieważ niektóre aplikacje dystrybucyjne działają na Pythonie.
Nie, zdefiniowanie 2.7 jako domyślnego interpretera języka Python w Lucid nie jest bezpieczne . I nie sądzę, że będzie w przyszłości.
W jednym wydaniu nie ma większych aktualizacji wersji żadnego oprogramowania.
Python2.7 nie zastąpi 2.6 jako domyślnego interpretera. Ten rodzaj aktualizacji jest wykonywany tylko pomiędzy wersjami, w ramach jednej - zwłaszcza LTS - istnieją tylko tak zwane aktualizacje stabilnego wydania, tj. Poprawki błędów i aktualizacje związane z bezpieczeństwem.
Jednak korzystanie z python2.7 jest całkowicie bezpieczne, definiując interpreter jako #!/usr/bin/python2.7i umożliwiając użytkownikom zainstalowanie go przy użyciu make altinstallźródła python, wraz z python2.6
Miał ten sam problem z VPS, którego nie można uaktualnić do Maverick (nawet nowe obrazy LTS nie zawsze są dostępne na czas). Odpowiedź Mariusza pomogła mi zacząć, ale należy ją rozwinąć:
Dodaj PPA do swoich źródeł
Jeśli jesteś w mojej sytuacji, prosta rada biegania add-apt-repositorynie zadziała dla ciebie. Zróbmy to w staromodny sposób:
Otwórz plik /etc/apt/sources.list(potrzebujesz uprawnień roota; jeśli korzystasz z powłoki, prawdopodobnie oznacza to uruchomienie sudo vim /etc/apt/sources.list).
Przejdź na sam dół pliku (jeśli używasz vim, przełącz się do trybu wstawiania, naciskając i) i dodaj następujące wiersze:
deb http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main
deb-src http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main
Zapisz i wyjdź (in vim: type :wq) i wróć do powłoki.
Wpisz następujące dane (właściwy klucz znajdziesz w PPA ; jest to część po ukośniku w „szczegółach technicznych” - upewnij się, że masz właściwy):
Wreszcie, chcesz pipi virtualenvpracować, jeśli planujesz zrobić coś poważnego:
easy_install-2.7 pip
pip-2.7 install virtualenv
Konfigurowanie virtualenv
Utwórz folder dla nowego środowiska i otwórz go:
mkdir my_env && cd my_env
Utwórz samo środowisko wirtualne (kropka wskazuje, że bieżący katalog to lokalizacja środowiska, zastąp go poprawną ścieżką, jeśli pominąłeś poprzedni krok):
virtualenv --no-site-packages --python=python2.7.
Aktywuj środowisko. Zauważysz zmiany powłoki w celu odzwierciedlenia aktywnego środowiska:
source bin/activate
Cokolwiek zrobisz teraz w tej powłoce, użyje skryptów w binfolderze środowiska wirtualnego i pakietów tego środowiska Python. Pamiętaj, że ta opcja --no-site-packagesoznacza, że zaczynasz od minimalnego zestawu pakietów (w tym pipjednak), więc musisz zainstalować wszystkie potrzebne pakiety.
Po zakończeniu dezaktywuj środowisko (jest to polecenie rozpoznawane przez aktywne środowisko):
deactivate
Możesz także zainstalować pakiety w środowisku wirtualnym, przekazując -Eopcję pip(np. pip install some-package -E /path/to/virtual/environmentZainstalować some-packagew środowisku wirtualnym na podanej ścieżce). Pamiętaj, że masz pipzainstalowanych kilka różnych wersji odpowiadających różnym wersjom Pythona.
Dobrym pomysłem jest użycie, pip-2.7jeśli chcesz instalować pakiety dla Pythona 2.7 podczas pracy poza środowiskiem wirtualnym ( --python=python2.7przekazana przez nas opcja virtualenvoznacza, że środowisko wirtualne będzie korzystać z dostarczonych przez siebie wersji Python 2.7, więc nie musisz martw się o to).
W moim przypadku zainstalowałem już pip dla 2.6 i musiałem easy_install-2.7 -U pipwymusić instalację wersji 2.7. Ale dzięki, to świetna pomoc!
Gabe Moothart
2
W kroku 2 w sekcji „Zainstaluj i skonfiguruj Python 2.7” musiałem to zrobić wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py -O - | sudo python2.7. A potem, aby uzyskać pip, sudo python2.7 -m easy_install pipa następnie sudo python2.7 -m easy_install --upgrade pip. Opcja --no-check-certificate była konieczna, aby obejść skargę wget dotyczącą certyfikatu SSL. (Patrz pypi.python.org/pypi/setuptools#unix-wget )
zlovelady
10
Istnieje PPA z Pythonem 2.7 dla Ubuntu 10.04. Może to być bezpieczniejsze / wygodniejsze niż budowanie ze źródła.
nie sądzę, ponieważ będzie musiała zmienić wiele programów i bibliotek powiązanych z wersją 10.04. W rzeczywistości wiele prac w Ubuntu jest wykonywanych przy użyciu określonej wersji Pythona. Zmiana na Python zmieniłaby wiele plików systemowych.
W wersji 10.10 jest on dostępny z synaptic / aptitude po prostu przez zainstalowanie Python2.7 (możesz także zainstalować 3 i 3.1), ale w przypadku wersji 10.04 nie ma pracy, aby zrobić to w wersji 10.04.
10.10 ma domyślnie Python 2.6. Przepraszam, jeśli odpowiedź nie była pozytywna, ale po prostu chciałem dać ci pojęcie o zmianach.
EDYCJA - Domyślnie zmieniono Python 2.7 na Python 2.6, ponieważ sprawdzono go dwukrotnie w komentarzach poniżej. Dziękuję Ci.
Właśnie wypisałem 10.10 w wirtualnym pudełku, domyślnie ma on Python 2.6.6, chociaż dla indywidualnego programu dostępne są pakiety 2.7. Myślę, że to 11.04, który ma go jako domyślny. Generalnie ciągle aktualizuję i zmieniam dystrybucje, ale rozważałem pozostanie przy 10.04, ze względu na jego długoterminowe wsparcie i moje dostosowania.
easy_install-2.7 -U pip
wymusić instalację wersji 2.7. Ale dzięki, to świetna pomoc!wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py -O - | sudo python2.7
. A potem, aby uzyskać pip,sudo python2.7 -m easy_install pip
a następniesudo python2.7 -m easy_install --upgrade pip
. Opcja --no-check-certificate była konieczna, aby obejść skargę wget dotyczącą certyfikatu SSL. (Patrz pypi.python.org/pypi/setuptools#unix-wget )Istnieje PPA z Pythonem 2.7 dla Ubuntu 10.04. Może to być bezpieczniejsze / wygodniejsze niż budowanie ze źródła.
źródło
Rozwiązało to wszelkiego rodzaju problemy, które miałem /programming/7561221/undefined-symbol-pyobject-nextnotimplemented-error-when-loading-psycopg2-modu .
Teraz
libpython2.7.so.1.0
link do mojego Python2.7 itp. Wydaje się być szczęśliwszy.Ostatnim elementem, który musiałem to rozgryźć, była
mod_wsgi
instalacja. Jeśli po prostu wydasz:To zostanie skompilowane dla Python2.6 :(
Postępowałem więc zgodnie z instrukcjami udzielonymi przez Gork-Zope tutaj .
Mam wreszcie działający serwer. Dziękuję Ci.
źródło
nie sądzę, ponieważ będzie musiała zmienić wiele programów i bibliotek powiązanych z wersją 10.04. W rzeczywistości wiele prac w Ubuntu jest wykonywanych przy użyciu określonej wersji Pythona. Zmiana na Python zmieniłaby wiele plików systemowych.
W wersji 10.10 jest on dostępny z synaptic / aptitude po prostu przez zainstalowanie Python2.7 (możesz także zainstalować 3 i 3.1), ale w przypadku wersji 10.04 nie ma pracy, aby zrobić to w wersji 10.04.
10.10 ma domyślnie Python 2.6. Przepraszam, jeśli odpowiedź nie była pozytywna, ale po prostu chciałem dać ci pojęcie o zmianach.
EDYCJA - Domyślnie zmieniono Python 2.7 na Python 2.6, ponieważ sprawdzono go dwukrotnie w komentarzach poniżej. Dziękuję Ci.
źródło