Changeset 705


Ignore:
Timestamp:
06/20/18 15:31:05 (6 years ago)
Author:
dubos
Message:

devel : fixes build for CICLAD

Location:
codes/icosagcm/devel
Files:
3 edited
1 moved

Legend:

Unmodified
Added
Removed
  • codes/icosagcm/devel/Python/env/ifort_CICLAD.env

    r702 r705  
    1 module purge 
    2 module load intel/15.0.6.233 
    3 module load openmpi/1.6.5-ifort 
    4 module load hdf5/1.8.18-parallel-ifort 
    5 module load netcdf4/4.4.1.1-parallel-ifort 
     1# arch.env and arch.path should be sourced before sourcing this script 
    62module load python/2.7-anaconda 
    73 
    8 # If not done yet, certain python packages must be installed in a dynamico-only conda environment : 
     4# If not done yet, certain python packages must be installed in a dynamico-only conda environment of yours : 
    95#   conda create -n dynamico python 
    106#   source activate dynamico 
     
    128 
    139# netCDF4 must be installed manually in order to use the netCDF library from the modules (requires Cython, see above) 
    14 # for this download and unpack  
    15 #   https://pypi.python.org/packages/6a/37/49fd7cc21af0fb173e40de5e15f7fdd48d521429922a90347219c77b0c36/netCDF4-1.2.9.tar.gz#md5=e320491d52c42e937e6df47b56a2579c 
    16 # then 
    17 #   python setup.py build 
    18 #   python setup.py install 
     10# for unpack Python/extern/netCDF4-1.2.9.tar.gz then 
     11#   LDFLAGS='-lirc' python setup.py build 
     12#   cp -pr build/lib.linux-x86_64-2.7/net* ~/.conda/envs/dynamico/lib/python2.7/site-packages/ 
     13# NOTE : libirc.so is the intel runtime library and is needed at runtime. 
     14# FIXME : python setup.py install does not seem to install anything, hence 'cp -pr ...'. There must be a better way. 
    1915 
    2016# CICLAD does not have a parmetis module 
    2117# compiling parmetis uses cmake, installed above using pip because the system-wide cmake might not work with the modules 
    22 # then download parmetis from  
    23 #   http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz 
    24 # unpack, follow workaround given in  
    25 #   https://stackoverflow.com/questions/35058709/building-shared-parmetis-4-0-3 
    26 # then 
     18# for this unpack Python/extern/parmetis-4.0.3.tar.gz then 
    2719#   make config shared=1 prefix=$HOME/.conda/envs/dynamico 
    2820#   make install 
     
    3022#   cp $(find . -name 'libmetis.so') $HOME/.conda/envs/dynamico/lib/ 
    3123#   cp $(find . -name 'metis.h') $HOME/.conda/envs/dynamico/include/ 
     24# NOTE : the tar.gz is derived from http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-4.0.3.tar.gz  
     25#        with modifications along the lines of 
     26#        https://stackoverflow.com/questions/35058709/building-shared-parmetis-4-0-3 
    3227 
    3328source activate dynamico 
    3429PARMETIS_CFLAGS="-I$HOME/.conda/envs/dynamico/include" 
    35 PARMETIS_LDFLAGS="-L$HOME/.conda/envs/dynamico/lib" 
     30PARMETIS_LDFLAGS="-L$HOME/.conda/envs/dynamico/lib -liomp5" 
    3631 
    3732export NETCDF_LDFLAGS="$(nf-config --flibs) -lhdf5 -lz -ldl -lm" 
     
    4338export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.conda/envs/dynamico/lib 
    4439 
    45 BASEDIR=$(dirname ${BASH_SOURCE[0]}) 
    46 . $BASEDIR/linux.env 
     40. linux.env 
  • codes/icosagcm/devel/arch/arch-ifort_CICLAD.fcm

    r611 r705  
    66%FPP_FLAGS           -P 
    77%FPP_DEF             KEY_NONE CPP_NETCDF4 
    8 %BASE_FFLAGS         -i4 -r8 -auto -align all -I${MKLROOT}/include 
     8%BASE_FFLAGS         -fPIC -i4 -r8 -auto -align all -I${MKLROOT}/include 
    99%PROD_FFLAGS         -g -traceback -O3 
    1010%DEV_FFLAGS          -g -O1 -traceback 
     
    1212%MPI_FFLAGS 
    1313%OMP_FFLAGS          -openmp -openmp-threadprivate compat 
    14 %BASE_LD             -i4 -r8 -auto -L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lm 
     14%BASE_LD             -fPIC -i4 -r8 -auto -L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lm 
    1515%MPI_LD 
    1616%OMP_LD              -openmp 
  • codes/icosagcm/devel/arch/arch-ifort_CICLAD.path

    r611 r705  
    22NETCDF_LIBDIR=$(nf-config --flibs) 
    33NETCDF_LIB="" 
     4 
    45MPI_INCDIR="" 
    56MPI_LIBDIR="" 
     
    910HDF5_LIB="" 
    1011 
    11 XIOS_INCDIR="-I$PWD/../XIOS/inc" 
    12 XIOS_LIBDIR="-L$PWD/../XIOS/lib" 
     12XIOS_ROOTDIR=$(cd -P ../XIOS ; pwd) 
     13XIOS_INCDIR="-I$XIOS_ROOTDIR/inc" 
     14XIOS_LIBDIR="-L$XIOS_ROOTDIR/lib" 
    1315XIOS_LIB="-lxios -lstdc++" 
    1416 
     
    1618IOIPSL_LIBDIR="-L $PWD/../IOIPSL/lib" 
    1719IOIPSL_LIB="-lioipsl" 
     20 
     21MKL_LIBDIR="-L $MKLROOT/lib" 
     22MKL_LIBDIR="-I $MKLROOT/include" 
     23MKL_LIB="" 
     24CURRENT_ARCH=ifort_CICLAD 
  • codes/icosagcm/devel/make_python

    r694 r705  
    8383 
    8484    log mpicc -c -std=c99 -fPIC $PARMETIS_CFLAGS Python/src/partition.c -o obj/partition.o 
    85     make_so $XIOS_ROOTDIR/lib/libxios.a $LIBDIR/libxios.so "$NETCDF_LDFLAGS" 
     85    make_so $XIOS_ROOTDIR/lib/libxios.a $LIBDIR/libxios.so "$NETCDF_LDFLAGS -lstdc++" 
    8686    make_so $LIBDIR/libicosa.a $LIBDIR/libicosa.so "-L$LIBDIR -lxios $KERNELS_LDFLAGS" "physics_external_mod.o physics_mod.o timeloop_gcm_mod.o icosa_init_mod.o" obj/partition.o 
    8787 
     
    115115if [[ "$CURRENT_ARCH" == "" ]] ; then echo "Current architecture undefined or unsupported" ; exit ; fi 
    116116 
    117 . Python/env/${CURRENT_ARCH}.env 
     117cd Python/env ;  . ${CURRENT_ARCH}.env ; cd $DYNAMICO_ROOT 
    118118 
    119119cmd_$1 
Note: See TracChangeset for help on using the changeset viewer.