RPi Debian Python3

From eLinux.org
Revision as of 14:02, 28 April 2012 by Ghans (Talk | contribs)

Jump to: navigation, search


Installing Python 3.2.3 on Debian

This guide is aimed at developers, although it can be used by beginners if they know what they are after. It is provided as it is realised that the latest version of Python (3.2) is not available in Debian Squeeze. Other Linux RPi distributions will in future contain this by default.

To install the latest version of Python (3.2.3) to Debian:

# install dependencies
sudo apt-get install zlib1g-dev
sudo apt-get install libncurses-dev
sudo apt-get install libbz2-dev
sudo apt-get install libreadline-dev
sudo apt-get install sqlite3 libsqlite3-dev
sudo apt-get install libssl-dev
sudo apt-get install libgdbm-dev
sudo apt-get install tk-dev

wget http://www.python.org/ftp/python/3.2.3/Python-3.2.3.tar.bz2
tar xvfj Python-3.2.3.tar.bz2 
cd Python-3.2.3

./configure
# (The 'configure' command takes approx 5 mins)

make
# (The 'make' command takes approx 46 min when you are not running X)

sudo make install
# (The 'make install' command takes approx 5 mins)

cd ~

IDLE shortcut in LXDE menu

To add an idle icon to the programming menu in LXDE:

sudo mkdir /usr/local/share/applications
sudo nano /usr/local/share/applciations/idle.desktop

Enter the following file contents:

[Desktop Entry]
Encoding=UTF-8
Exec=idle3 %F
Type=Application
Terminal=false
Name=IDLE
GenericName=IDLE
StartupNotify=false
Categories=Development;IDE;

Distribute module

To install most other Python modules, you will probably want to install the 'distribute' module. This is a replacement for the now deprecated 'setuptools':

wget http://pypi.python.org/packages/source/d/distribute/distribute-0.6.26.tar.gz
tar xvfz distribute-0.6.26.tar.gz
cd distribute-0.6.26
sudo python3 setup.py install
cd ~

Numpy module

This requires a lot of system resources (memory) to build. Run it with nothing else running - do not run inside X!

N.B. Takes around 1 hr 40 to build

wget http://pypi.python.org/packages/source/n/numpy/numpy-1.6.1.tar.gz
tar xvfz numpy-1.6.1.tar.gz
cd numpy-1.6.1
python3 setup.py build
sudo python3 setup.py install
cd ~

PyGame Module

The latest (stable) release of PyGame does not support Python 3.2 so you have to use the development source. Make sure that you install the numpy module first. Note that sound does not work yet - I'll update this guide with instructions when it has been fixed.

(Takes around 15 minutes to build).

# get pygame source code
sudo apt-get install mercurial
hg clone https://bitbucket.org/pygame/pygame
cd pygame

# install dependencies
sudo apt-get install libsdl-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev 
sudo apt-get install libsmpeg-dev libportmidi-dev libavformat-dev libswscale-dev

# build and install pygame
python3 setup.py build
sudo python3 setup.py install

PyQt Module

Watch this space!

GPIO Module

Note that any programs that access GPIO using this module must be run as root.

wget http://pypi.python.org/packages/source/R/RPi.GPIO/RPi.GPIO-0.1.0.tar.gz
tar xvfz RPi.GPIO=0.1.0.tar.gz
cd RPi.GPIO-0.1.0
sudo python3 setup.py install
cd ~
{"cc_re__cc_re__cc_by_sa_3_0": ["k to this revision of the page\">Permanent link</a></li>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<li id=\"t-info\"><a href=\"/index.php?title=RPi_Debian_Python3&amp;action=info\" title=\"More information about this page\">Page information</a></li>\n\t\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</div>\n\t\t</div>\n\t\t\t\t</div>\n\t\t</div>\n\t\t<div id=\"footer\" role=\"contentinfo\">\n\t\t\t\t\t\t\t<ul id=\"footer-info\">\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-info-viewcount\">This page has been accessed 22,169 times.</li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-info-copyright\">Content is available under <a class=\"external\" rel=\"nofollow\" href=\"http://creativecommons.org/licenses/by-sa/3.0/\">a Creative Commons Attribution-ShareAlike 3.0 Unported License</a> unless otherwise noted.</li>\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t<ul id=\"footer-places\">\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-privacy\"><a href=\"/eLinux.org:Privacy_policy\" title=\"eLinux.org:Privacy policy\">Privacy policy</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-about\"><a href=\"/eLinux.org:About\" title=\"eLinux.org:About\">About eLinux.org</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-disclaimer\"><a href=\"/eLinux.org:General_disclaimer\" title=\"eLinux.or", "oter-places-privacy\"><a href=\"/eLinux.org:Privacy_policy\" title=\"eLinux.org:Privacy policy\">Privacy policy</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-about\"><a href=\"/eLinux.org:About\" title=\"eLinux.org:About\">About eLinux.org</a></li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-places-disclaimer\"><a href=\"/eLinux.org:General_disclaimer\" title=\"eLinux.org:General disclaimer\">Disclaimers</a></li>\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t\t<ul id=\"footer-icons\" class=\"noprint\">\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-copyrightico\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"http://creativecommons.org/licenses/by-sa/3.0/\"><img src=\"http://i.creativecommons.org/l/by-sa/3.0/88x31.png\" alt=\"a Creative Commons Attribution-ShareAlike 3.0 Unported License\" width=\"88\" height=\"31\" /></a>\n\t\t\t\t\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t\t\t<li id=\"footer-poweredbyico\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<a href=\"//www.mediawiki.org/\"><img src=\"/resources/assets/poweredby_mediawiki_88x31.png\" alt=\"Powered by MediaWiki\" srcset=\"/resources/assets/poweredby_mediawiki_132x47.png 1.5x, /resources/assets/poweredby_mediawiki_176x62.png 2x\" width=\"88\" height=\"31\" /></a>\n\t"], "copyright__copyright__copyright": ["image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev \nsudo apt-get install libsmpeg-dev libportmidi-dev libavformat-dev libswscale-dev\n\n# build and install pygame\npython3 setup.py build\nsudo python3 setup.py install\n\nPyQt Module\n\nWatch this space!\n\nGPIO Module\n\nNote that any programs that access GPIO using this module must be run as root.\n\nwget http://pypi.python.org/packages/source/R/RPi.GPIO/RPi.GPIO-0.1.0.tar.gz\ntar xvfz RPi.GPIO=0.1.0.tar.gz\ncd RPi.GPIO-0.1.0\nsudo python3 setup.py install\ncd ~", "image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev \nsudo apt-get install libsmpeg-dev libportmidi-dev libavformat-dev libswscale-dev\n\n# build and install pygame\npython3 setup.py build\nsudo python3 setup.py install\n\nPyQt Module\n\nWatch this space!\n\nGPIO Module\n\nNote that any programs that access GPIO using this module must be run as root.\n\nwget http://pypi.python.org/packages/source/R/RPi.GPIO/RPi.GPIO-0.1.0.tar.gz\ntar xvfz RPi.GPIO=0.1.0.tar.gz\ncd RPi.GPIO-0.1.0\nsudo python3 setup.py install\ncd ~", "image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev \nsudo apt-get install libsmpeg-dev libportmidi-dev libavformat-dev libswscale-dev\n\n# build and install pygame\npython3 setup.py build\nsudo python3 setup.py install\n\nPyQt Module\n\nWatch this space!\n\nGPIO Module\n\nNote that any programs that access GPIO using this module must be run as root.\n\nwget http://pypi.python.org/packages/source/R/RPi.GPIO/RPi.GPIO-0.1.0.tar.gz\ntar xvfz RPi.GPIO=0.1.0.tar.gz\ncd RPi.GPIO-0.1.0\nsudo python3 setup.py install\ncd ~"]}