Es gribu atjaunināt Python uzbūvi savā Linux lodziņā, bet vienīgais veids, kā to izdarīt, ir atinstalēt pašreizējo versiju un instalēt jauno. Mana sistēma jau ir atjaunināta (atjaunināju vakar). Es gribēju uzzināt, vai ir veids, kā atjaunināt konkrētu programmu no komandrindas, piemēram, sudo apt-get update <program-name>
. Es zinu, ka šī komanda neeksistē, bet es ceru, ka ir kaut kas līdzvērtīgs.
Kā citi jau atzīmēja, kailā sudo apt-get install package
instalēs jaunāko pieejamo versiju, vajadzības gadījumā aizstājot vecāko.
Taču ar dažām programmatūrām (tostarp Python) situācija ir nedaudz citāda. Dažām galvenajām, ļoti un nesaderīgi atšķirīgajām versijām ir savas paketes. Piemēram, Python 2.6, Python 2.7, Python 3.1 Ubuntu ir atsevišķas paketes.
Īpaši svarīgi ir tas, ka viena no Ubuntu politikām ir plaši izmantot Python galalietotāju programmatūras rakstīšanai. Tāpēc faktiski diezgan liela daļa sistēmas ir rakstīta Python. Pašlaik kods darbojas ar Python 2.6 - šī versija ir noklusējuma versija pēc instalēšanas; un kods *nebūs viegli darboties, piemēram, ar Python 2.7, jo pastāv nesaderības. Lai pārslēgtu sistēmu uz Python 2.7, ir jāveic darbs, kas ietver visu skriptu atjaunināšanu un atkārtotu testēšanu. To nevar izdarīt vienkārši, tas ir, jūs nevarat vienkārši "pārslēgt" savu sistēmu uz Python 2.7 un dzēst vecāko versiju.
Bet. ja jums nav'svarīgi jūsu sistēmas izdomātie rīki un jums vienkārši nepieciešams jaunāks Python - neredziet šķēršļus. Iet un sudo apt-get install python3
un drosmīgi kodējiet 3.x Python; tikai atcerieties, ka savus skriptus palaiciet ar python3
un izmantojiet #!/usr/bin/env python3
shebang rindu.
Tu esi tuvu tam, lai domātu par tādu komandu kā sudo apt-get update
(kas ir faktiska komanda, bet nedara to, ko jūs vēlaties.)
Lai atjauninātu Python un visu pārējo, kas jums ir instalēts, vienkārši izpildiet šo komandu:
sudo apt-get upgrade
apt-get install python
Es uzskatu, ka tam vajadzētu darboties. Acīmredzot jums būs jāmaina 'python', lai tas atbilstu attiecīgās paketes nosaukumam jūsu repozitorijā.