Search code examples
pythoninstallationcentospython-install

Install python module to non default version of python using .sh


I have a problem similar to this post: Install python module to non default version of python on Mac, so I am aware of those solutions, but they do not work for me.

I am installing M2Crypto on CentOS, which means I much use fedora_setup.sh build followed by fedora_setup.sh install in order to install on my architecture.

Unfortunately, the default Python version is 2.6, but I use 2.7. How do I execute the build and install commands so that they build and install to Python2.7 site-packages? Is there a simple command I don't know? I've been searching around here: http://docs.python.org/2/install/ in the Python Docs, but I don't see anything about .sh scripts?


Solution

  • This was an incredibly difficult answer to come by, but the support team at Webfaction where I am hosted were spectacular in assisting me. Directly from the support I was given:

    First build swig,

    wget http://prdownloads.sourceforge.net/swig/swig-2.0.8.tar.gz
    tar -xf swig-2.0.8.tar.gz 
    cd swig-2.0.8
    ./configure --prefix=$HOME
    make
    make install
    

    Than get m2crypto,

    svn checkout http://svn.osafoundation.org/m2crypto/tags/0.21/ m2crypto-0.21
    cd m2crypto-0.21/
    

    Edit fedora_setup.sh from this

    SWIG_FEATURES=-cpperraswarn python setup.py $*
    

    to this,

    SWIG_FEATURES=-cpperraswarn python2.7 setup.py $*
    

    Then build, then install,

    ./fedora_setup.sh build
    ./fedora_setup.sh install --prefix=$HOME
    
    [me@web342 lib]$ python2.7
    Python 2.7.5 (default, May 16 2013, 20:16:09) 
    [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import M2Crypto
    >>> print M2Crypto
    <module 'M2Crypto' from '/home/me/lib/python2.7/site-packages/M2Crypto-0.21-py2.7-linux-x86_64.egg/M2Crypto/__init__.pyc'>
    

    Obviously, substitute your own details throughout. Hope this helps the next guy trying to install M2Crytpo using fedora_setup to a non-default python version.