openSUSE is a popular Linux choice. It is the open source variant of SUSE Linux — similar to the CentOS—Red Hat connection. Unlike Ubuntu Linux, openSUSE is released as a 4.7 GB DVD image.
The software package manager for openSUSE is a program called YaST and its job is to make installing standard open source packages simple.
Zypper
The command-line interface to YaST is called zypper which can be used to install software. You can install packages by either opening the YaST GUI and selecting Software Management or by using zypper on the command-line.
Searching for Packages
To search for packages, use zypper search as demonstrated below:
bash$ zypper search kernel
Loading repository data...
Reading installed packages...
S | Name | Summary | Type
--+--------------------------------+---------------------------------------------------------------+-----------
i | devel_kernel | Linux Kernel Development | pattern
| kernel-coverage | Kernel Coverage Imageing, Galaxy Poster | package
| kernel-debug | A Debug Version of the Kernel | package
| kernel-debug | A Debug Version of the Kernel | srcpackage
| kernel-debug-base | A Debug Version of the Kernel - base modules | package
| kernel-debug-devel | Development files necessary for building kernel modules | package
| kernel-default | The Standard Kernel | package
| kernel-default | The Standard Kernel | srcpackage
| kernel-default-base | The Standard Kernel - base modules | package
| kernel-default-devel | Development files necessary for building kernel modules | package
When an i appears in the S column, that means that particular package is already installed.
Installing Packages
To install a package, use sudo zypper install <package> as demonstrated below:
bash$ sudo zypper install make
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following NEW package is going to be installed:
make
1 new package to install.
Overall download size: 358.0 KiB. After the operation, additional 1.0 MiB will be used.
Continue? [y/n/?] (y):
Retrieving package make-3.82-147.1.2.x86_64 (1/1), 358.0 KiB (1.0 MiB unpacked)
Retrieving: make-3.82-147.1.2.x86_64.rpm [done]
Installing: make-3.82-147.1.2 [done]
Uninstalling/Removing Packages
To remove packages, use the command sudo zypper remove <package> as demonstrated below:
bash$ sudo zypper remove make
root's password:
Loading repository data...
Reading installed packages...
Resolving package dependencies...
The following package is going to be REMOVED:
make
1 package to remove.
After the operation, 1.0 MiB will be freed.
Continue? [y/n/?] (y): y
Removing make-3.82-147.1.2 [done]
There are some running programs that use files deleted by recent upgrade. You may wish to restart some of them. Run 'zypper ps' to list these programs.
Packages to install from Zypper
NOTE: This list was verified to be complete for openSUSE 12.1. My hope is that it's also a complete list for older and newer versions as well, but that may not necessarily be the case.
- patch *: Applies patch files to apply modifications to files. This is used to apply bug fixes to Amber.
- make *: The (almost) universal program used to build projects from source
- gcc *: Standard C compiler. Needed to compile C (and some C++) codes (token of the GNU compiler suite)
- gcc-c++ *: This provides the g++ compiler (C++ compiler that's part of the GNU compiler suite)
- gcc-fortran *: This provides the gfortran compiler (Fortran77/90 compiler that's part of the GNU compiler suite)
- flex *: Lexical analyzer generator
- python-tk *: Tkinter python package that is part of the standard Python library. xparmed.py uses this to power its GUI environment.
- python-devel *: Header files for the CPython C API (needed by mpi4py, which is used to parallelize MMPBSA.py)
- libtool *: Generic library support script
- bison *: Parser generator
- xorg-x11-devel *: X11 development headers needed for xleap
- libbz2-devel *: Bzip2 development files (necessary for cpptraj so it can read files compressed via bzip2)
- autoconf (*): Configure generator useful for programs you may wish to develop and release. Necessary to build sander.APBS
- automake (*): Makefile generator useful in conjunction with autoconf. Necessary to build sander.APBS
- gnuplot : Useful plotting engine
Setting up to install Amber
As long as you install the packages marked with a * above, you should be ready to build Amber in serial.
Added step to build Amber in Parallel:
If you wish to build Amber in parallel, you should download the latest, stable MPICH2 implementation of MPI (see this website for download information). Extract this source into $AMBERHOME/AmberTools/src and in that directory run the command ./configure_mpich2 gnu (where gnu may be replaced with intel or pgi, but must match what you use to build Amber and AmberTools).
Then, add $AMBERHOME/bin to your PATH and $AMBERHOME/lib to your LD_LIBRARY_PATH. If you put it in your ~/.bashrc, it would look something like this:
export PATH=$PATH\:$AMBERHOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH\:$AMBERHOME/lib
This will put the MPI compiler wrappers in your PATH and allow you to properly link the libraries.