Installing abipy - rousseab/abipy GitHub Wiki

Installing abipy can be challenging. It relies on various bleeding edge modules being actively developed by Matteo Giantomassi, and it can be a bit scary to install these in your main site-packages.

Here I want to quickly jot down a recipe that works for me, in the hopes that it may help others.

Steps:

  • git clone all relevant repos from gmatteo; at the time of this writing, you need

    • gmatteo/abipy
    • gmatteo/monty
    • gmatteo/pymatgen
  • use virtualenv to create a "sandbox" environment where to install these modules (see https://virtualenv.pypa.io/en/latest/).

  • Using the pip executable within the virtualenv directory, pip install all needed external modules. I generated a list of the modules I had to install using "pip freeze"; this list is at the end of this entry.

  • using the virtualenv version of python, execute

      (virtualenv directory)/bin/python setup.py build
      (virtualenv directory)/bin/python setup.py install
    

in the monty, pymatgen and abipy distribution directories. Virtualenv is clever enough that the "install" instructions will put these bleeding edge libraries in the sandbox, not in the system-wide site-packages.

That's it! It should now be possible to python import abipy using the virtualenv python executable.

output of pip freeze:

  • APScheduler==2.1.0
  • Babel==1.3
  • Cython==0.20.1
  • Fabric==1.8.3
  • FireWorks==0.79
  • Jinja==1.2
  • Jinja2==2.7.2
  • List==1.3.0
  • MarkupSafe==0.19
  • Pigments==1.6
  • Pizza.py==0.1.0
  • Pmw==1.3.3
  • PyCifRW==3.6.2
  • PyDispatcher==2.0.3
  • PyYAML==3.11
  • Pygments==2.0.2
  • ScientificPython==2.8.1
  • Sphinx==1.3.1
  • abitools==3.4.2
  • alabaster==0.7.4
  • argparse==1.3.0
  • atomicfile==1.0
  • backports.ssl-match-hostname==3.4.0.2
  • beautifulsoup4==4.3.2
  • bitstring==3.1.3
  • certifi==2015.04.28
  • configobj==5.0.6
  • custodian==0.7.2
  • docutils==0.12
  • ecdsa==0.11
  • fortranformat==0.2.5
  • future==0.14.3
  • futures==2.1.6
  • gnureadline==6.3.3
  • html2text==2014.12.29
  • ipdb==0.8
  • ipython==3.1.0
  • jsonschema==2.4.0
  • matplotlib==1.4.2
  • mock==1.0.1
  • monty==0.6.4
  • mpltools==0.2.0
  • mpmath==0.19
  • netCDF4==1.0.8
  • nose==1.3.4
  • nose-exclude==0.2.0
  • numexpr==2.4
  • numpy==1.9.1
  • pandas==0.15.0
  • paramiko==1.12.0
  • parse==1.6.3
  • pdb==0.1
  • prettytable==0.7.2
  • psutil==2.2.0
  • pyatompaw==1.4.0
  • pybtex==0.18
  • pycrypto==2.6.1
  • pyhull==1.5.3
  • pymatgen==3.0.13
  • pymongo==2.6.3
  • pypandoc==0.8.1
  • pyparsing==2.0.3
  • python-ase==3.8.1.3440
  • python-dateutil==2.4.0
  • python-gnupg==0.3.7
  • pytz==2014.10
  • pyzmq==14.1.1
  • requests==2.4.1
  • scikit-learn==0.15.2
  • scipy==0.14.0
  • scp==0.8.0
  • seaborn==0.5.1
  • six==1.9.0
  • snowballstemmer==1.2.0
  • sphinx-rtd-theme==0.1.8
  • sympy==0.7.5
  • tables==3.1.1
  • termcolor==1.1.0
  • tornado==4.1
  • tzlocal==1.1.1
  • virtualenv==12.1.1
  • wsgiref==0.1.2
  • wxPython==3.0.0.0
  • wxPython-common==3.0.0.0
  • wxmplot==unknown