Yuping:
references:
https://www.digitalocean.com/community/tutorials/how-to-set-up-python-2-7-6-and-3-3-3-on-centos-6-4
https://www.digitalocean.com/community/tutorials/common-python-tools-using-virtualenv-installing-with-pip-and-managing-packages
——————————————————–
I decided for now to install python 2.7 instead of python 3.0 because that’s what most astronomy python libraries are compatible with (e.g. psrchive). If someone wants to build python 3.0 just substitute the following 2.7.12 with 3.0.* and that should work. Note that I install it in /usr/local/ for each of the computers (i’m not sure what exactly willhappen if multiple hosts try to run the same python) so the following is repeated for each computer we have.
——————————————————
prereqs: make sure you do
sudo yum install tcl tcl-devel tk tk-devel
and check to make sure that all prereqs specified in
https://www.digitalocean.com/community/tutorials/common-python-tools-using-virtualenv-installing-with-pip-and-managing-packages
are satisfied.
install:
First download python from https://www.python.org/ and untar it
>xz -d Python-2.7.12.tar.xz
>tar -xvf Python-2.7.6.tar
>sudo cp -r Python-2.7.6 /usr/local/src/
now we can cd into /usr/local/src/Python-2.7.6 and run
>sudo ./configure --prefix=/usr/local
>sudo make
make will complain about not having the following
>Python build finished, but the necessary bits to build these modules were not found:
>bsddb185 dl imageop
>sunaudiodev
These four we can live without (see http://www.kelvinwong.ca/2010/08/02/python-2-7-on-dreamhost/) but if you are missing more than that, google it up.
Now do the following (altinstall is very important otherwise you are gonna break CentOS)
> sudo make altinstall
Now python should be built with executable under /usr/local/bin/python2.7
Now build pip which does package management and virtualenv which lets
you install python library without sudo-ing and makes complicated
dependencies easier to handle (see reference article 2)
First you need setuptool because pip depends on it
You can download it from https://pypi.python.org/packages/source/s/setuptools/, untar it and copy it over to /usr/local/src/
then do
> cd setuptools-1.4.2
> sudo /usr/local/bin/python2.7 setup.py install
then you download pip from https://bootstrap.pypa.io/get-pip.py into /usr/local/src/ and do
> sudo /usr/local/bin/python2.7 get-pip.py
and pip should be installed.
Finally you can do the following to get some common libraries installed:
> sudo /usr/local/bin/pip2.7 install numpy scipy matplotlib astropy ipython
you can do this on a single computer, go to some nfs mounted directory (e.g. your home directory) and do
> /usr/local/pip freeze > package_list.txt
which pipes the current installed packages to the file package_list.txt. Then you can hop (ssh) onto other computers and just do
> sudo /usr/local/bin/pip2.7 install -r package_list.txt
And done!
more to come on installing python libraries without being sudo.