public
Last active

python 2.7.5 install on OSX (10.8+) using brew (pip, easy_install, virtualenv, virtualenvwrapper)

  • Download Gist
gistfile1.sh
Shell
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
# In case you had some strange python installation
# NOTE: .pydistutils.cfg seems to be not compatible with brew install python
# areas I needed to clean before installation
# clean up ~/Library/Python
# clean up .local
 
# preconditions:
# xcode with command line tools installed
# homebrew: https://github.com/mxcl/homebrew/wiki/Installation
 
brew install python --framework
 
#### update/create your .bash_profile
#homebrew
export PATH=/usr/local/bin:/usr/local/sbin:${PATH}
 
#virtualenv wrapper
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
 
#### end of .bash_login
 
# start new shell and make sure you are using /usr/local/bin/python
# note that it will complain that /usr/local/bin/virtualenvwrapper.sh does not exist
# as we havent installed virtualenvwrapper yet
 
which python
python --version
# make sure its python >=2.7.5
 
# time to install virtualenvironment
pip install virtualenvwrapper
mkdir $HOME/.virtualenvs
 
# start new shell and from now on you will have access to mkvirtualenv
 
# NOTE: that the only time you should be asked for yout password is during homebrew installation
# if all goes correctly than none of above commands would ask you for your passoword / would want you to use sudo

As recommended here http://docs.python-guide.org/en/latest/starting/installation/ it's probably best to use
brew install python --framework
to compile a Framework-style Python build, rather than a UNIX-style build.

Nice finding, just updating - thanks!

PS: I'll need to check their recommendation to install pip through brew
brew install pip

Good idea! I just checked it, brew doesn't have that formula anymore, so I did it via Distribute:

$ curl -O http://python-distribute.org/distribute_setup.py
$ python distribute_setup.py
$ easy_install pip

This was helpful for me today...thanks!

I'm glad to hear it!

Saved much time today! Thanks!

updated to capture 10.8 and homebrew changes

Updated from .bash_login to .bash_profile to avoid common issues

A quote from man bash:
"When bash is invoked as an interactive login shell, or as a non-interactive shell with the --login option, it first reads and executes commands from the file /etc/profile, if that file exists. After reading that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that order, and reads and executes commands from the first one that exists and is readable."

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.