I want to use the macports version of python instead of the one that comes with Leopard.
-
2You should not uninstall default python from OS X, this may make your system unstable because Python is an important OS component. Instead you can use macports to add other instances of python. – sorin May 28 '11 at 12:29
7 Answers
Don't. Apple ships various system utilities that rely on the system Python (and particularly the Python "framework" build); removing it will cause you problems.
Instead, modify your PATH environ variable in your ~/.bash_profile
to put /opt/local/bin
first.

- 4,648
- 3
- 19
- 11
-
i think this is true also of different linux distro's, various library /package/software installers rely on the perl, python , ruby factory installed interpreters, you should leave them there, symlink around them – Gene T Nov 22 '08 at 19:22
I have both installed:
$ which python
/usr/bin/python
$ which python2.5
/opt/local/bin/python2.5
I also added the following line to my .profile
:
export PATH=/opt/local/bin:/opt/local/sbin:$PATH

- 951,095
- 183
- 1,149
- 1,285
-
What should the new python at /opt/local/bin look like? I installed Python via MacPorts and it had no effect on any of the python* files in /opt/local/bin. They're all symlinks to the system Python. This is on Snow Leopard. – thebossman Jan 07 '11 at 04:35
Use the python_select port to switch python interpreters.
sudo port install python25
sudo port install python_select
sudo python_select python25
This will symlink /opt/local/bin/python
to the selected version. Then export PATH
as described above.

- 2,223
- 1
- 22
- 19
Instead of uninstalling the built-in Python, install the MacPorts version and then modify your $PATH
to have the MacPorts version first.
For example, if MacPorts installs /usr/local/bin/python
, then modify your .bashrc
to include PATH=/usr/local/bin:$PATH
at the end.

- 197,344
- 39
- 212
- 226
I wouldn't uninstall it since many scripts will expect python to be in the usual places when they do not follow convention and use #!/usr/bin/env python
. You should simply edit your .profile
or .bash_profile
so the macports binaries are the first in your path.
Your .profile
should have this line:
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
If not, add it in, and now your shell will search macport's bin/
first, and should find macports python before system python.

- 16,529
- 4
- 36
- 58
The current Macports installer does the .profile PATH modification automatically.

- 2,306
- 2
- 14
- 11