Changes between Version 2 and Version 3 of CompilingDynamico


Ignore:
Timestamp:
09/10/13 10:08:16 (11 years ago)
Author:
dubos
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • CompilingDynamico

    v2 v3  
    88 
    99Subversion (svn) is needed to obtain the source code. You need to be a registered Forge user and ask to join the DYNAMICO project. 
    10 DYNAMICO requires the NetCDF library, including the F90 modules. 
     10DYNAMICO requires the NetCDF library, including the F90 modules. MPI is required for parallel execution but DYNAMICO can compile and run without MPI. 
    1111 
    1212== Getting DYNAMICO through svn == 
    1313 
    14 svn co svn+ssh://mylogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/dynamico/svn/codes/icosagcm/trunk 
     14svn co svn+ssh://mylogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/dynamico/svn/codes/icosagcm/trunk DYNAMICO 
    1515 
    16 (mylogin should be your forge login) 
     16'mylogin' should be your forge login. svn will create the DYNAMICO directory and download the source code there. 
    1717 
    1818== Compiling DYNAMICO == 
    1919 
     20The compiling process is automated but some information is needed to guide it. This information is contained in text files in source:codes/icosagcm/trunk/arch . Sample files corresponding to a few machines (Ada at IDRIS, Curie at TGCC) are present. Assuming you compile on Ada : 
     21 
     22cd DYNAMICO 
     23./make_icosa -arch X64_ADA -parallel mpi -prod -jobs 8 
     24 
     25will compile DYNAMICO. The make_icosa script accepts keyword-value pairs which drive its behaviour. The most important option is arch=ARCH (here ARCH=X64_ADA). It directs make_icosa to use the information contained in : 
     26* arch/arch-ARCH.env 
     27* arch/arch-ARCH.fcm 
     28* arch/arch-ARCH.path 
     29 
     30The *.env file is a shell script that is executed by make_icosa. It sets up the environment for use by *.path. *.path defines paths to libraries and modules needed for compilation. *.fcm defines the commands used to compile, link, etc. as well as options to be passed to the compiler/linker .