an extensive open-source Python framework
for data sonification research and auditory display

HOME   intro learn install extend envars IDE    



Python download and installation

All the components of the Framework need to function well together. So, when installing a new version of Python, make sure you download the right version for SoniPy for your hardware and operating system. We recommend a specific version for the Framework, and it is not necessarily the very latest. This is because although another version may be OK, our experience is that just because it should work with everything else, doesn't mean it will. The devil is in the detail and our approach is to upgrade cautiously and with lots of testing. If you are using an earlier version than that recommended, we advise you to upgrade. Our experience is that backward compatibility is quite good in Python. That is, deprecated features tend to be carried forward for quite a few major version upgrades.

Whilst it is possible to download and compile various versions of Python from source code, in practice it is rarely useful. An installer version is recommended. Download and installation instructions for most platforms can be found on the Python site at

For information on Python-oriented file-editing tools, go to the IDE menu, above.

Macintosh OSX Installation

Updates to this information can be found at the bottom of this page. If you're trying to simultaneously manage different versions of python on OSX, and you know the basics, you might want to read that now.

The Simple Method: The simplest way to install another version of Python is to download a .dmg [1] of it from This will be a Universal binary version of Python that runs natively on PPC and Intel systems. Installation is the same as the installation of any other application.

For the curious...where things go: The Apple pre-installed Python is /usr/bin/python. This is, in fact, is a symbolic link to (at the time of writing) /usr/bin/python2.3 which itself is a symbolic link to /System/Library/Frameworks/Python.framework/Versions/2.3/bin/python.

By default, Apple applications are located in the /System/Library/Frameworks/ directory whilst all-user third-party application frameworks are located in the /Library/Frameworks/ directory. So a new Python version will be /Library/Frameworks/Python.framework/Versions/Current/bin/python<

Look carefully at the difference:
Apple:  /System/Library/Frameworks/Python.framework/Versions/2.3/bin/python
Other:         /Library/Frameworks/Python.framework/Versions/Current/bin/python

The contents of the Python.framework/Versions directory (on my Intel OSX machine) looks like this:

% ls -l /Library/Frameworks/Python.framework/Versions/
total 8
drwxrwxr-x 13 502 admin 442 Jan 27 13:54 2.4/
lrwxr-xr-x 1 root admin 3 Mar 20 17:23 Current@ -> 2.4

So Current is symbolically linked to version 2.4. As Python and SoniPy development proceeds and we have time check all the SoniPy Modules against later versions, we will migrate SoniPy accordingly.

It is possible to have a number of versions of Python installed simultaneously without them conflicting. If you install a later version, say Python 2.5, the .dmg installer will install a 2.5 directory in /Library/Frameworks/Python.framework/Versions/, and switch the symbolic link (Current) to 2.5. So the directory will look like this:

% ls -l /Library/Frameworks/Python.framework/Versions/
total 16
drwxrwxr-x 13 502 admin 442 Jan 27 13:54 2.4/
drwxrwxr-x 13 502 admin 442 May 20 21:22 2.5/
lrwxr-xr-x 1 root admin 442 May 20 21:23 Current@ -> 2.5

Notice that version 2.4 is still there - it is not overwritten. If you need to go back to an older one, you can, simply by swapping what the Current directory is linked to. Like this:

% cd /Library/Frameworks/Python.framework/Versions/
% sudo ln -s 2.4 Current
% ls -l
total 16
drwxrwxr-x 13 502 admin 442 Jan 27 13:54 2.4/
drwxrwxr-x 13 502 admin 442 May 20 21:22 2.5/
lrwxr-xr-x 1 root admin 442 May 20 21:23 Current@ -> 2.4

And then when you want to go back to version 2.5:

% sudo ln -s 2.5 Current


Macintosh OSX: Installing Extension Modules

Although Intel Macs are shipped with a python installed, it is not very well maintained by them. Most people we know who use python for more than a casually, use another version. We use versions built by the MacPython development group.

If you are daunted by the package-building and installing to build SoniPy tools, there is a single build of many of the packages at
Chris Fonnesbeck's at Macscience site. Chris uses Enthought's Python Distribution (free for academic and non-profit work). The package is called Scipy superpack available here. There is a series of blog posts there that give hints to what's going on when you download and install a 3rd party python module and it is "not found" when you try to "import xxx". You may find reading our explanation of what's going on at our ENVARS sub-menu.   

Footnote [1] ".DMG" is an acronym for "disk image" (Disk iMaGe)

HELP : components

user interfaces
Copyright © 2007, 2008, 2009 David Worrall                                                                                 Last updated: 20090120