Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revision Both sides next revision
auto3dem:install [2015/03/29 19:18]
gcardone created
auto3dem:install [2015/07/07 18:52]
gcardone
Line 3: Line 3:
 ===== Quick start ===== ===== Quick start =====
  
-  ​Download the latest version from the website +  ​Download the latest version from the website 
-  ​Uncompress the archive downloaded +  ​Uncompress the archive downloaded 
-  ​Move the directory to the directory where you want to install the programs +  ​Move the directory to the directory where you want to install the programs 
-  ​Open a terminal and launch the installation script +  ​Open a terminal and launch the installation script ​<​code>​ 
- +./​auto3dem_install 
-Linux +</​code>​ 
-   make_all [serial | parallel] [all | gui | nogui] +  ​* ​The script ​will detect ​the platform ​and by default will build all the applicationsincluding those based on a graphical user interface (GUI), assuming ​the GNU compilers ​are availableThe computing-intensive codes are parallelized ​using MPI, and the parallel ​version is compiled by default. You can change the default settings by adding specific optionsFor complete list of them type ''./​auto3dem_install --help''​ 
-Mac OSX +  
-   ​mac_make_all [serial | parallel] [all | gui | nogui] +  ​Provide path information for binaries and perl scripts. For example, C shell users should add the following to your .cshrc file, where x.xx is the auto3dem version. ​<​code>​ 
-Choose serial or parallel to build image reconstruction codes that run +set path = (/​path_to_auto3dem/​auto3dem_vx.xx/​bin $path) 
-in serial or parallel mode, respectively. All parallelization is done +</​code> ​Of course, it's probably more convenient to create a symbolic link named auto3dem that points to the latest version.
-using MPI. The second option specifies whether all, only GUI-based, or +
-only non-GUI based applications should be built. +
-\\ +
-You will generally want to build the entire suite, but these options +
-are provided both for developers ​and those who may not have all of the +
-necessary Motif libraries for the GUIs. +
- +
-__NOTES__:  +
-    * For serial mode, the FC and CC macros in the make.inc.serial file point to the gfortran and gcc compilers, respectivelyYou will need to edit this file if you are using other compilers. +
-    * For parallel modethe FC and CC macros in the make.inc.parallel ​file point to the mpif90 and mpicc scripts, respectively. You will need to edit this file if you are using other compilation scripts. +
-    * In the future we hope to develop ​more robust build system, but for now you're stuck having to do some of the work on your own if using other compilers+
-  ​Provide path information for binaries and perl scripts. For example, C shell users should add the following to your .cshrc file, where x.xx is the auto3dem version. +
- +
-  ​set path = (/​path_to_auto3dem/​auto3dem_vx.xx/​bin $path) +
- +
-Of course, it's probably more convenient to create a symbolic link +
-named auto3dem that points to the latest version.+
  
 +===== Compilers =====
 +The installation script assumes that GNU compilers are available on the computer and will try to compile the programs using those. If you want to use different compilers, you can specify them with the option //​--compiler//​. The settings for some compilers are already available, and the option //--help// provides a list of them. You can add the settings for a compiler that is not listed by adding a file for the specific combination you intend to use (platform, compiler, parallel or serial) in the //Make// directory, using the ones already present as templates. ​
  
 ===== Library dependencies ===== ===== Library dependencies =====
Line 37: Line 22:
  
 AUTO3DEM does not depend on external programs, but relies on libraries of the operating system that are not necessarily present by default. AUTO3DEM does not depend on external programs, but relies on libraries of the operating system that are not necessarily present by default.
-- libraries needed for running the programs in parallel using MPI +  * [[auto3dem:​installation:​linux_libraries|Linux]] 
-openmpi ​         (mpich2 as an alternative) +  * [[auto3dem:​installation:​macosx_libraries|Mac OSX]]
-openmpi-devel ​   (mpich2-devel as an alternative) +
-- libraries needed for running graphical programs (mainly Robem) +
-libX11 +
-libX11-devel +
-openmotif +
-openmotif-devel +
-libSM +
-libSM-devel +
-libICE +
-libICE-devel +
-libXext +
-libXext-devel +
-libXmu +
-libXmu-devel +
-libXp +
-libXp-devel +
-libXt +
-libXt-devel +
  
 ===== Perl requirements ===== ===== Perl requirements =====
  
  
-auto3dem and the auxilliary routines setup_rmc, handflip, +//auto3dem// and the auxilliary routines ​//setup_rmc////handflip//
-remove_useless,​ and findbest were developed using Perl version 5.8.5,+//remove_useless//, and //findbest// were developed using Perl version 5.8.5,
 but will probably run using slightly older versions. It is expected but will probably run using slightly older versions. It is expected
 that you have the standard set of CPAN modules, including Cwd, that you have the standard set of CPAN modules, including Cwd,
Line 96: Line 62:
 In order to build the executables,​ you will need the following In order to build the executables,​ you will need the following
  
-Fortran 90 compiler +  ​Fortran 90 compiler 
-ANSI C compiler +  ANSI C compiler 
-MPI implementation ​(parallel mode only) +  MPI libraries ​(parallel mode only)
- +
-The codes make extensive use of Fortran 90 features - dynamic memory +
-management, newer intrinsic functions, array syntax, etc. - and will +
-not compile under Fortran 77.+
  
 Our codes have been successfully compiled and run using the gfortran Our codes have been successfully compiled and run using the gfortran
 and ifort Fortran compilers, the icc and gcc C compilers, and and ifort Fortran compilers, the icc and gcc C compilers, and
-MPICH2. That said, we expect that any standard compilers and MPI+the MPICH2 ​and openMPI libraies. That said, we expect that any standard compilers and MPI
 implementation will work. implementation will work.
  
-To create binaries of the image reconstruction codes, simply ​execute +To create binaries of the image reconstruction codes, simply ​launch ​the installation script. This
-'​make_all mode' (mode = parallel or serial) on the command line. This+
 script sets symbolic links to the appropriate make include and perl script sets symbolic links to the appropriate make include and perl
 module files, enters each of the program and library directories,​ and module files, enters each of the program and library directories,​ and
 executes the local Makefile. The binaries are then copied into the bin executes the local Makefile. The binaries are then copied into the bin
 directory. directory.
- 
-The make.inc.serial and make.inc.parallel files specify the compilers 
-and flags that will be used by the Makefiles. These are fairly generic 
-and may need to be manually edited if you are using anything other 
-than the GNU compilers. 
- 
  
 ===== Compiling image preprocessing applications ===== ===== Compiling image preprocessing applications =====
  
- +//RobEM////fixpif////oned//, and //​ctfdisp// ​all make use of the Motif graphical
-RobEM, fixpif, oned, and ctfDisp ​all make use of the Motif graphical+
 user interface toolkit. You will need to install the appropriate user interface toolkit. You will need to install the appropriate
 library if you wish to use these programs. library if you wish to use these programs.
Line 157: Line 111:
 ===== Running parallel jobs ===== ===== Running parallel jobs =====
  
-AUTO3DEM currently ​runs under the PBS and SGE batch schedulers. In+AUTO3DEM currently ​is capable to run under the PBS and SGE batch schedulers. In
 your job script, you will need to include the flag (-V) that exports your job script, you will need to include the flag (-V) that exports
 all environment variables to the job. Do not explicitly include a all environment variables to the job. Do not explicitly include a