Σημείωση: Έχω δημιουργήσει πακέτα python3 για Ubuntu 8.04 και 8.10 στα γνωστά PPA στο launchpad. Θα γλιτώσετε αρκετό χώρο, χρόνο και κόπο χρησιμοποιώντας τα.
https://launchpad.net/~medigeek/+archive/ppa-python
Για να τα εγκαταστήσετε, εκτελέστε τις ακόλουθες εντολές:
- Κώδικας: Επιλογή όλων
echo "deb http://ppa.launchpad.net/medigeek/ppa-python/ubuntu `lsb_release -sc` main" | sudo tee /etc/apt/sources.list.d/medigeek-python.list
- Κώδικας: Επιλογή όλων
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B5140445
sudo apt-get update
sudo apt-get install python3
Όσοι θέλουν όμως να μάθουν κάτι παραπάνω, καλό θα ήταν να μάθουν και πώς γίνονται τα προγράμματα compile από τον πηγαίο κώδικα
========================
Οδηγός εγκατάστασης python2.6 και python3 στο λειτουργικό σύστημα Ubuntu 8.04.2 και 8.10
Ο οδηγός δημιουργήθηκε για τα ασύγχρονα μαθήματα για Python, αλλά αν φανεί χρήσιμος και για κάτι άλλο, είναι εδώ.
Χρειάζεστε:
- Διαδίκτυο
- Τερματικό (Terminal ή Konsole)
Οι χρήστες Ubuntu 8.04.2 χρειάζονται:
- python3.0 (python3 δηλαδή)
Οι χρήστες Ubuntu 8.10 χρειάζονται:
- python3.0 (python3 δηλαδή)
Σημείωση: Στο Ubuntu 8.10 υπάρχει η python3: apt://python3 - Το πρόβλημα είναι πως είναι ακόμη beta, γι' αυτό καλό θα ήταν και το python3 να εγκατασταθεί.
Εγκατάσταση πακέτων:
- Κώδικας: Επιλογή όλων
[ "`lsb_release -sc`" == hardy ] && libffipkg="libffi4-dev" || libffipkg="libffi-dev"
sudo apt-get -y install build-essential libncursesw5-dev libreadline5-dev libssl-dev libgdbm-dev libbz2-dev libc6-dev libsqlite3-dev tk-dev autoconf automake1.9 autotools-dev blt blt-dev debiandoc-sgml emacs22 emacs22-bin-common emacs22-common emacsen-common gettext html2text intltool-debian libdb4.6-dev libgif4 liblockfile1 libroman-perl libsgmls-perl libsp1c2 libtext-format-perl m4 po-debconf sgmlspl sharutils sp tex-common texinfo texlive-base texlive-base-bin texlive-common texlive-doc-base texlive-latex-base texlive-latex-recommended xaw3dg $libffipkg
(Δίνετε τον κωδικό όταν αυτός ζητηθεί και πιέζετε Enter.)
Εγκατάσταση python2.6:
ΔΕΝ ΕΙΝΑΙ ΑΝΑΓΚΑΙΟ!! Όποιος το χρειάζεται, το εγκαθιστά, για τα μαθήματα χρειάζεστε μόνο python3.0 (βλέπε πιο κάτω)
- Κώδικας: Επιλογή όλων
cd
mkdir -p python-build
cd python-build
wget "http://www.python.org/ftp/python/2.6.2/Python-2.6.2.tgz" -O Python-2.6.2.tgz
tar xzf Python-2.6.2.tgz
cd Python-2.6*
./configure --prefix=/usr/local
make
sudo make install
cd
Δοκιμάστε αν δουλεύει:
- Κώδικας: Επιλογή όλων
python2.6 -V
Εγκατάσταση python3.0:
- Κώδικας: Επιλογή όλων
cd
mkdir -p python-build
cd python-build
wget "http://www.python.org/ftp/python/3.0.1/Python-3.0.1.tgz" -O Python-3.0.1.tgz
tar xzf Python-3.0.1.tgz
cd Python-3.0*
./configure --prefix=/usr/local
make
sudo make install
sudo ln -s /usr/local/bin/python3.0 /usr/local/bin/python3
Δοκιμάστε αν δουλεύει:
- Κώδικας: Επιλογή όλων
python3 -V
python3 -c "import datetime, time, re, string, array, readline, pickle, configparser, copy, math, operator, os.path, os, glob, posix, json, xml.dom.minidom, urllib.parse, urllib.request; print('ΟΚ')"
Αν δεν δειτε την έκδοση (π.χ. "Python 3.0.1+") και "ΟΚ", τότε κάτι πήγε στραβά.
Όλα μαζί σαν ένα "bash script": http://pastebin.ca/raw/1442513
Χρήση τους σε python .py αρχεία
- Κώδικας: Επιλογή όλων
#!/usr/local/bin/python2.6
print("Test!")
- Κώδικας: Επιλογή όλων
#!/usr/local/bin/python3
print("Test!")
Αρχεία που κατεβάσαμε και δημιουργήσαμε
Τα αρχεία που φτιάχτηκαν κατα τη δημιουργία βρίσκονται στον προσωπικό σας φάκελο sto home (Places -> Home), στο φάκελο python-build. Μπορείτε να τον σβήσετε όταν τελειώσει η εγκατάσταση.
Απεγκατάσταση
Μιας και το /usr/local σε κανονικό Ubuntu λειτουργικό σύστημα είναι κενό, αφαιρούμε όλα τα αρχεία που βρίσκονται στο /usr/local:
- Κώδικας: Επιλογή όλων
sudo find /usr/local -type f -delete
(Οι πιο έμπειροι χρήστες μπορούν να κάνουν εγκατάσταση με sudo checkinstall αν αυτό τους ενοχλεί )
Απεγκατάσταση πακέτων
Δεν είμαι σίγουρος ποια πακέτα μπορούν να αφαιρεθούν, αλλα τα -dev μπορούν:
- Κώδικας: Επιλογή όλων
sudo aptitude -y markauto build-essential libncursesw5-dev libreadline5-dev libssl-dev libgdbm-dev libbz2-dev libc6-dev libsqlite3-dev tk-dev autotools-dev blt-dev libdb4.6-dev libffi-dev