Changes between Version 3 and Version 4 of CompilingDynamico
- Timestamp:
- 09/10/13 10:17:05 (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
CompilingDynamico
v3 v4 3 3 == Generalities == 4 4 5 DYNAMICO is written in Fortran 90 with some legacy code in Fortran 77. 5 DYNAMICO is written in Fortran 90 with some legacy code in Fortran 77. The build process is based on [http://metomi.github.io/fcm/doc/user_guide/make.html FCM]. 6 6 7 7 == Prerequisites == … … 12 12 == Getting DYNAMICO through svn == 13 13 14 15 {{{ 14 16 svn co svn+ssh://mylogin@forge.ipsl.jussieu.fr/ipsl/forge/projets/dynamico/svn/codes/icosagcm/trunk DYNAMICO 17 }}} 15 18 16 19 'mylogin' should be your forge login. svn will create the DYNAMICO directory and download the source code there. … … 20 23 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 : 21 24 25 {{{ 22 26 cd DYNAMICO 23 ./make_icosa -arch X64_ADA -parallel mpi -prod -jobs 8 27 ./make_icosa -arch X64_ADA -parallel mpi -prod 28 }}} 24 29 25 30 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 : 26 * arch/arch-ARCH.env27 * arch/arch-ARCH.fcm28 * arch/arch-ARCH.path31 * arch/arch-ARCH.env 32 * arch/arch-ARCH.fcm 33 * arch/arch-ARCH.path 29 34 30 35 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 . 36 37 After a successful build the main executable is found in the bin/ directory. 38