Dear Nick,

Thank you for your response,

I made corrections to my arch.make according to your suggestions.

The error was due to mpif90 for some reason in my arch.make. I tried to use mpiifort instead and that just compiled with no error.

Is there a specific reason why mpif90 caused a problem? (Sorry if the question is dumb ;-))

Thank you for your help and I wish you a very good Christmas.

Jean-Jo

Le 18/12/2017 à 16:57, Nick Papior a écrit :
Dear jean-jo

When using intel compilers you should add this to your arch.make:

# The atom.f code is very vulnerable. Particularly the Intel compiler
# will make an erroneous compilation of atom.f with high optimization
# levels.
atom.o: atom.F
        $(FC) -c $(FFLAGS_DEBUG) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_fixed_F) $<
state_analysis.o: state_analysis.F
        $(FC) -c $(FFLAGS_DEBUG) $(INCFLAGS) $(FPPFLAGS) $(FPPFLAGS_fixed_F) $<


Also,
1) add .c to the .SUFFIXES list
2) Do not use libsiestaLAPACK when you have MKL available, these lapack/blas are *only* for testing purposes (they are very slow).

On a side-note, are you sure your bullxmpi works with -lmkl_blacs_intelmpi_lp64? As far as I can see bullxmpi is an OpenMPI variant which means you need to use -lmkl_blacs_openmpi_lp64 instead.

Lastly, the errors you see are probably because you haven't done a make clean?

2017-12-15 15:57 GMT+01:00 Jean-Joseph Adjizian <jean.adjiz...@uclouvain.be <mailto:jean.adjiz...@uclouvain.be>>:

    Dear all,

    I am  trying to install TBtrans with NETCDF dependencies using the
    latest version 4.1-b3.
    The libraries i am using are intelmpi/2017.3.196/64  and
    mkl/lp64/11.2.4.223 <http://11.2.4.223>.
    Any installation (Siesta, transiesta) with these libraries work
    just fine without netcdf.
    It is only when I add the netcdf flags in the arch.make.

    To install netcdf, I used the script 'install_netcdf4.bash' given
    in the Docs folder.
    It seems to work fine since I get this message after execution:

    /Completed installing Fortran NetCDF library//
    //
    //##########################//
    //# Completed installation #//
    //#   of NetCDF package    #//
    //#  and its dependencies  #//
    //##########################//
    //
    //
    //Please add the following to the BOTTOM of your arch.make file//
    //
    //INCFLAGS +=
    -I/software/netcdf_Tbtrans/for_4.1_b3/build/netcdf/4.4.1.1/include
    <http://4.4.1.1/include>//
    //LDFLAGS +=
    -L/software/netcdf_Tbtrans/for_4.1_b3/build/zlib/1.2.11/lib
    -Wl,-rpath=/software/netcdf_Tbtrans/for_4.1_b3/build/zlib/1.2.11/lib//
    //LDFLAGS +=
    -L/software/netcdf_Tbtrans/for_4.1_b3/build/hdf5/1.8.16/lib
    -Wl,-rpath=/software/netcdf_Tbtrans/for_4.1_b3/build/hdf5/1.8.16/lib//
    //LDFLAGS +=
    -L////software//netcdf_Tbtrans/for_4.1_b3/build/netcdf/4.4.1.1/lib
    -Wl,-rpath=/software/netcdf_Tbtrans/for_4.1_b3/build/netcdf/4.4.1.1/lib
    
<http://4.4.1.1/lib-Wl,-rpath=/software/netcdf_Tbtrans/for_4.1_b3/build/netcdf/4.4.1.1/lib>//
    //LIBS += -lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lz//
    //COMP_LIBS += libncdf.a libfdict.a//
    //FPPFLAGS += -DCDF -DNCDF -DNCDF_4/


    So I add these line in my arch.make. But when I try to compile
    Transiesta and TBtrans I get the following:

    /netcdf_ncdf.f90(280): error #7013: This module file was not
    generated by any release of this compiler.   [MPI]//
    //    use mpi//
    //--------^//
    //netcdf_ncdf.f90(356): error #6580: Name in only-list does not
    exist.   [MPI_INFO_NULL]//
    //    use mpi, only : MPI_INFO_NULL//
    //--------------------^//
    //netcdf_ncdf.f90(401): error #7013: This module file was not
    generated by any release of this compiler. [MPI]//
    //    use mpi, only : MPI_INFO_NULL//
    //--------^//
    //netcdf_ncdf.f90(2966): error #7013: This module file was not
    generated by any release of this compiler.   [MPI]//
    //    use mpi//
    //--------^//
    //netcdf_ncdf.f90(387): error #6404: This name does not have a
    type, and must have an explicit type. [MPI_INFO_NULL]//
    //            comm = this%comm, info=MPI_INFO_NULL), &//
    //-----------------------------------^//
    //netcdf_ncdf.f90(433): error #6406: Conflicting attributes or
    multiple declaration of name. [MPI_INFO_NULL]//
    //            comm = this%comm, info=MPI_INFO_NULL), &//
    //-----------------------------------^//
    //netcdf_ncdf.f90(401): error #6580: Name in only-list does not
    exist.   [MPI_INFO_NULL]//
    //    use mpi, only : MPI_INFO_NULL//
    //--------------------^//
    //netcdf_ncdf.f90(3054): error #6404: This name does not have a
    type, and must have an explicit type. [MPI_COMM_WORLD]//
    //    call MPI_Comm_Rank(MPI_Comm_World,Node,MPIerror)//
    //-----------------------^//
    //compilation aborted for netcdf_ncdf.f90 (code 1)//
    //make[1]: *** [netcdf_ncdf.o] Error 1//
    //make[1]: Leaving directory
    `/software/transiesta/4.1_b3_NETCDF/src/Util/TS/TBtrans/ncdf'//
    //make: *** [libncdf.a] Error 2

    /Please also find the arch.make I am using for this.

    Any tip?

    Thank you for your kind help.

    All the best,

    Jean-Jo

    ps: Apologies for any inconvenience.




--
Kind regards Nick

Responder a