Skip to content
Snippets Groups Projects
A-INSTALL 26.9 KiB
Newer Older
# Version of PACKAGE MESONH "Open distribution"
#              PACK-MNH-V5-2-1
#              DATE : 02/05/2016
#              VERSION : MESONH MASDEV5_2 + BUG-1 
#
#  MAP
#
#        0) TWO WAYS OF DOWNLOADING MESONH
#      I-A) DOWNLOAD VIA THE WEB MESONH HOME PAGE
#      I-B) DOWNLOAD VIA CVS ANONYMOUS 
#       II) CONFIGURING THE MESONH PACKAGE
#      III) COMPILING/INSTALLING THE MESONH PACKAGE ON YOUR LINUX COMPUTER 
#       IV) RUN SOME "SMALL KTEST" EXAMPLES
#        V) RECOMPILING YOUR 'OWN' SOURCES ONLY 
#       VI) COMPILING/INSTALLING MESONH ON GENCI & ECMWF & METEO COMPUTERS
#      VII) "SCANDOLLAR" = SCRIPTING YOUR OWN PROCEDURES 
#
#     VIII) TROUBLE-SHOOTING
#           a) Segmentation violation -> problem of "stack size" limit
#           b) Compiler bug with "ifort 10.0.xxx" 
#
#       IX) OPTIONAL COMPILATION
#           a) MNH_NCWRIT for netcdf graphic output file 
#           b) MNH_FOREFIRE for forefire runs ( external package needed )
#           c) MNH_RTTOV for optional radiative computation
#           d) cleaning previous compiled version
#
#  0) TWO WAYS OF DOWNLOADING MESONH
#  =================================
#
#  MESONH sources and executables 
#  http://mesonh.aero.obs-mip.fr
#  are developed and maintained with the
#  CVS tools ( http://www.cvshome.org/ )
#
#  There are two ways to download the package of
#  MESONH containing :
#    - sources 
#    - makefiles
#    - precompile exe 
#    - graphic tools
#    - basic examples
#
#  The first way is for VERY BASIC USER OF MESONH 
#  via a download of a "tar ball" in the WEB site of MESONH
#
#  The second way is for USER/DEVELOPER of MESONH
#  via the use of the CVS tools and an access via anonymous
#  connection with "ssh" to the CVS REPOSITORY of the MESONH package 
# 
#
# REM: It is now strongly recommended, but it's not an obligation, 
#      for all users to use de CVS solution, because:
#
#      * It's far more easy for us ( support team ) to give you some assistance
#        in case of trouble ... as the CVS tool permits us to know exactly
#         what you have changed in the original PACKAGE
#
#      * It's much more easy for you to update to the last version ...  
#        or at least see the change made for BUGFIX directly on our installation .
#
#
#  So here are explained the two ways <=> mutually exclusif 
#
#
^L
# I-A) DOWNLOAD VIA THE WEB MESONH HOME PAGE
# ==========================================
#
# With your preferred web browser go to the MESONH WEB SITE
# 
#  http://mesonh.aero.obs-mip.fr/mesonh
#     ---> Download
#           ---> CVS MESONH
#
# or directly
#
# http://mesonh.aero.obs-mip.fr/cgi-bin/mesonh_interne/viewcvs.cgi/MNH-VX-Y-Z
#
# in the field  "Show files using tag:" 
#
#    ---> select "PACK-MNH-V5-2-1"
#
# and then download the file "PACK-MNH-VX-Y-Z.tar.gz" by the link 
#
#    --> Download tarball
#
# Then untar the file "PACK-MNH-VX-Y-Z.tar.gz" where you want to,
# in your home directory for example:
#
 
cd ~
tar xvfz PACK-MNH-VX-Y-Z.tar.gz

#
# As the directory did not reflect the last version name move it 
# to the right one
#
 
mv MNH-VX-Y-Z MNH-V5-2-1
      
#
#  Process now to the chapter to configure the MesoNH 
#
# => II) CONFIGURING THE MESONH PACKAGE
#
^L
# I-B) DOWNLOAD VIA CVS ANONYMOUS
# ===============================
#
#    a) download the ssh key file "anoncvs.key" for anonymous connection 
#    -------------------------------------------------------------------
#
# With your preferred web browser go to the MESONH WEB SITE
# 
#  http://mesonh.aero.obs-mip.fr/mesonh
#     ---> Download
#           ---> CVS PACKAGE MESONH
#
# or directly
#
#   http://mesonh.aero.obs-mip.fr/cgi-bin/mesonh_interne/viewcvs.cgi/MNH-VX-Y-Z
#
# in the field  "Show files using tag:" 
#
#    ---> select "PACK-MNH-V5-2-1"
#
#   download the file "anoncvs.key"
#
#   by  :
#         1) a  "left-click" in the "Rev." column 
#       + 2) a  "right-click" on "download" 
#                   ---> save link to disk
#               (Warning :: don't copy the file content with  mouse copy/past 
#               because it contains binary-encoded information !!!)
#
#   then copy this file in your "${HOME}/.ssh/" directory
#
#   AND VERY IMPORTANT !!!
#   Modify the "read/write" permission with:
# 

chmod 600 anoncvs.key

#
#    b) download the config file "config.anoncvs_www"
#    ------------------------------------------------ 
#
#    For METEO-FRANCE & IDRIS & CINES & Laboratoire d'Aerologie computers ( IP address filter )
#    ==========================================================================================
#
#    download the file
#
#      -->  "config.anoncvs_www" 
#
#    Then concatened the file content with your "${HOME}/.ssh/config" file
#    ( this will define the computer alias "mesonh_anoncvs_www" for future ssh 
#      anonymous connections )

cd ${HOME}/.ssh
cat config.anoncvs_www >> config

#
#    FOR OTHER COMPUTERS USE special "config.anoncvs_www" 
#    ===================================================
#
#    if the computer, from which you download the MESONH sources,
#    is external to  METEO-FRANCE & IDRIS & CINES & Laboratoire d'Aerologie Laboratoire download this file 
#
#      --> "config.anoncvs_www_ext" 

cd ${HOME}/.ssh
cat config.anoncvs_www_ext >> config

#
#    OR for ECMWF computer ( cca ) download this config file 
#    ( to bypass the gateway filter ) 
#
#      --> "config.anoncvs_www_ecmwf"
#

cd ${HOME}/.ssh
cat config.anoncvs_www_ecmwf >> config

#
#    c) Setting CVS variables
#    ------------------------
#
#    set the CVS_RSH et CVSROOT like this
#    ( in your ".profile" or ".bashrc" file )
#

export CVS_RSH=ssh
export CVSROOT=:ext:mesonh_anoncvs_www:/home/cvsroot

#
#   c)  Checking out the "MESONH PACKAGE"  
#   -------------------------------------
#
#   Now, from your "$HOME" directory for example 
#   extract the version "PACK-MNH-V5-2-1"
#   of the directory "MNH-VX-Y-Z" from the
#   cvs repository : 

cd ~
cvs co -r PACK-MNH-V5-2-1 -d MNH-V5-2-1 MNH-VX-Y-Z

#
# WARNING : don't use a sub-directory with dot "." in the name
#            ---> you could have some trouble when compiling mesonh
#
#  this will create in your "$HOME" a directory "MNH-V5-2-1" 
#  which contains of the last revision named "PACK-MNH-V5-2-1" 
#  of the MESONH PACKAGE 
#
#  The advantage of this way of downloading 
#  the package is that in the future you 
#  could check/update quickly differences with
#  the new version of the package without having
#  to download entirely the full package
#
#  Suppose that a new version for example
#  "PACK-MNH-V5-2-2" is announced ...
#
#  To see the differences with your working copy
#  do
#

cd ~/MNH-V5-2-1
cvs diff -r PACK-MNH-V5-2-2

#
#  And to upgrade your working copy
#

cd ~/MNH-V5-2-1
cvs update -r PACK-MNH-V5-2-2 -d -P

#
# At any time you could also check for "uptodate" 
# changes in the CVS "branch" dedicated to the MNH52 version
# before the official release of the "bugN+1" bugfix
#

cvs diff -r MNH52-BUG-branch
  
#
# An at "your own risk" update to this
# ( not yet official ) version by
#

cd ~/MNH-V5-2-1
cvs update -r MNH52-BUG-branch -d -P

#
#  Well, the use of CVS is not under the scope of this "INSTALL" document ...
#
#   Now go to then next chapter 
#
#   => II) CONFIGURING THE MESONH PACKAGE
#
#
^L
#
# II) CONFIGURING THE MESONH PACKAGE
# ==================================
#
#    For the installation process, you could now
#    use the "./configure" script like this 
#

cd ~/MNH-V5-2-1/src
./configure
. ../conf/profile_mesonh

#
#    this will create a configuration file "profile_mesonh" with
#    an extension reflecting the different "choices" made automatically
#    to match the computer on which you want to install MESONH
#   
#    WARNING :
#    =========
#    On GENCI & ECMWF & METEO/CNRM  computers, the './configure' is tuned to 
#    identify the computer on which the command is used
#    so the good compiler,  mpi & cdf library , etc ... 
#    are automatically chosen
# 
#    /!\ This is not the case in your "own" personal Linux computer ...
#    So is up to you to set the ARCH variable correctly
#    ARCH     = Fortran compiler to use,
#    VER_MPI  = version of MPi to, use 
#    OPTLEVEL = 
#    etc ...
#    and all the other environnement variables . 
# 
#    Be default, for an unknow computer, you will have  :
#
#   - the compiler choosen to be "gfortran" => ARCH=LXgfortran
#   - the mpi library to be the MPIVIDE  => VER_MPI=MPIVIDE
#     ( empty mpi library coming with MESONH package = no  parallel run possible )
#   - the level compiler optimization   => OPTLEVEL=DEBUG
#     (  for development purpose ,fast compilation & debugging )   
#       
#    SO IF NEEDED:
#    ============
#    you could change the default FLAG compiler/mpi/optlevel
#    like this, for example 

export ARCH=LXifort        # Use Intel "ifort" compiler on LX=linux Plateform 
export VER_MPI=MPIAUTO     # Use MPI with compiler wrapper 'mpif90', for computer having this wrapper installed 
export OPTLEVEL=O2         # Compile in O2 , 4 time faster then DEBUG, but least error check 

./configure

#    and then source/load the new generate file

. ../conf/profile_mesonh.LXifort.MNH-V5-2-1.MPIAUTO.O2

#
#  REM: 
#  ====
#
#  - Options specific to compile/architecture, like 'OPTLEVEL' are defined inside the "Rules.${ARCH}.mk" .
#
#  - Options specific to library like "mpi"="VER_MPI" or "cdf"="VER_CDF" are defined inside "Makefile.MESONH.mk"
#
#  - If need, for adaptation to your requirement, look inside the files and changes options for your needs .   
#  
#  - On PC-Linux, if needed , look in the "MesonhTEAM Wiki" to know how to compile the library MPI = OPEN-MPI , with MESONH
#
#    http://mesonh.aero.obs-mip.fr/teamwiki/MesonhTEAMFAQ/PC_Linux
#      --> Compilation of OPEN-MPI

^L
#   
ESCOBAR MUNOZ Juan's avatar
Loading
Loading full blame...