wiki:InstallLinux-prev

Version 1 (modified by toby, 10 years ago) (diff)

--

Installing GSAS-II on Linux systems

To date we have done a bit of testing with Linux, but we are not at the point where we can give a lot of advice on installation. (Contributions to this page are welcome).

You must have two software packages installed: python and subversion. The later is easy with the package managers on all common Linux dists, but python may be another matter. There are a number of Python packages required by GSAS-II it is not clear how many of these packages are distributed for each Linux distribution. We are using another alternative, the Enthought Python Distribution (EPD). Alternative to this include Free Enthought Python Distribution (EPDFree) (which will require installation of PyOpenGL), or Python(x,y) or ActiveState ActivePython. We simply have not tried any of these options.

Compiling Fortran Code

GSAS-II requires a small number of Fortran routines that are incorporated as Python packages (.so files). GSAS-II is distributed with these files compiled for a number of python versions, but if you are using something that does not match what we distribute, you may need to compile the Fortran routines yourself using the NumPy f2py routine and the compiler of your choice. Both G77 (32-bit Python only) and GFortran have been successful on the platforms we have tried.

To help with compiling the programs, use the python scons routine inside the GSASII\fsource directory. If you are lucky, this routine will find the needed compiler and python program, set all options correctly for you and run all steps needed to prepare the .pyd files. This is done by

(1) opening a terminal window,

(2) use the cd command to set your working directory to ...\GSASII\fsource and

(3) simply typing "scons" in the window.

If you need to change any options, type "scons help" to see a list of the possible command-line arguments and the values for the options. For testing, help can be used with command-line options to see how they will change the variables.