wiki:CompilingDynamico

Version 4 (modified by dubos, 11 years ago) (diff)

--

Getting and compiling DYNAMICO

Generalities

DYNAMICO is written in Fortran 90 with some legacy code in Fortran 77. The build process is based on FCM.

Prerequisites

Subversion (svn) is needed to obtain the source code. You need to be a registered Forge user and ask to join the DYNAMICO project. DYNAMICO requires the NetCDF library, including the F90 modules. MPI is required for parallel execution but DYNAMICO can compile and run without MPI.

Getting DYNAMICO through svn

svn co svn+ssh://mylogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/dynamico/svn/codes/icosagcm/trunk DYNAMICO

'mylogin' should be your forge login. svn will create the DYNAMICO directory and download the source code there.

Compiling DYNAMICO

The 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 :

cd DYNAMICO
./make_icosa -arch X64_ADA -parallel mpi -prod

will 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 :

  • arch/arch-ARCH.env
  • arch/arch-ARCH.fcm
  • arch/arch-ARCH.path

The *.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 .

After a successful build the main executable is found in the bin/ directory.

Attachments (2)