sharc-md / sharc

The SHARC molecular dynamics (MD) program suite is an ab initio MD software package developed to study the excited-state dynamics of molecules.
https://www.sharc-md.org
GNU General Public License v3.0
66 stars 36 forks source link

Pysharc Compilation Issue #83

Open thaiscott opened 12 months ago

thaiscott commented 12 months ago

Hello!

I am having some troulbe installing pysharc. My installation process is as follows:

  1. Create a conda environment with the following input "conda create -n pysharc_3.0 -c conda-forge python=3.9 numpy scipy h5py six matplotlib python-dateutil pyyaml pyparsing kiwisolver cycler netcdf4 hdf5 h5utils gfortran_linux-64" (This input is directly from the SHARC manual)

  2. The SHArC program also depends on LAPACK, BLAS, and FFTW, so I add them into my conda environment as well.

  3. I clone the git repository to an appropriate directory.

  4. I add -I and -L flags in the fortran and cc compilers in the Makefile in the source folder.

  5. I make the installation in the source directory of SHARC (which does not show errors) and then I use make clean. Then I change use_pysharc in the Makefile to true and cd into the pysharc directory to use make install again.

At this final install, I get a lot of errors about incompatible pointers and any attempt to use the pysharc program fails.

Here is the output I get for both steps:

For the first make install in the source directory, I get: "Updating "build_info.inc" gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c definitions.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c matrix.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c string.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input_list.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c misc.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c output.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_afssh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_dom.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c nuclear.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm_out.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c restart.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c bsh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic_laser.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c zpe.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c army_ants.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c tsh_tu.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c pointer_basis.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c driver.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c main.F90 gfortran definitions.o matrix.o string.o input_list.o driver.o misc.o output.o restart.o qm_out.o nuclear.o bsh.o electronic.o qm.o electronic_laser.o input.o decoherence_afssh.o decoherence_dom.o zpe.o tsh_tu.o army_ants.o pointer_basis.o main.o -o sharc1.x -llapack -lfftw3 -lblas -lgfortran ln -sf sharc1.x sharc.x gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c data_extractor.f90 gfortran qm_out.o data_extractor.o definitions.o matrix.o string.o input_list.o -o data_extractor.x -llapack -lfftw3 -lblas -lgfortran gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c diagonalizer.f90 gfortran string.o matrix.o diagonalizer.o -o diagonalizer.x -llapack -lfftw3 -lblas -lgfortran gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c LASER_definitions.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c LASER_calc_fftw.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c LASER_input.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c LASER_main.f90 gfortran LASER_definitions.o LASER_calc_fftw.o LASER_input.o LASER_main.o -o laser.x -llapack -lfftw3 -lblas -lgfortran cp -f *.x ../bin cp -f sharcvars.sh ../bin cp -f sharcvars.csh ../bin"

Then I use make clean and change the use_pysharc variable to true. Then I cd into pysharc and do make install again. This is the output from that: "(pysharc_3.0) [trscott@login2 pysharc]$ make install cd netcdf; make lib make[1]: Entering directory `/central/groups/hadtlab/TRS/software/sharc/pysharc/netcdf' gcc -fPIC -I. -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -Wall -c nc_basic.c gcc -fPIC -I. -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -Wall -c nc_sharc.c nc_sharc.c: In function ‘reopen_ncoutputdat’: nc_sharc.c:140:5: warning: passing argument 3 of ‘nc_inq_dimlen’ makes pointer from integer without a cast [enabled by default] check_nccall(iret, ^ In file included from nc_basic.h:28:0, from nc_sharc.h:28, from nc_sharc.c:25: /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include/netcdf.h:1069:1: note: expected ‘size_t ’ but argument is of type ‘int’ nc_inq_dimlen(int ncid, int dimid, size_t lenp); ^ nc_sharc.c: In function ‘read_sharc_ncoutputdatistep’: nc_sharc.c:301:9: warning: passing argument 3 of ‘nc_inq_dimlen’ from incompatible pointer type [enabled by default] check_nccall(iret, ^ In file included from nc_basic.h:28:0, from nc_sharc.h:28, from nc_sharc.c:25: /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include/netcdf.h:1069:1: note: expected ‘size_t ’ but argument is of type ‘int ’ nc_inq_dimlen(int ncid, int dimid, size_t *lenp); ^ [ -d ../lib ] mkdir ../lib ar -cvq ../lib/libsharcnc.so nc_basic.o nc_sharc.o a - nc_basic.o a - nc_sharc.o make[1]: Leaving directory /central/groups/hadtlab/TRS/software/sharc/pysharc/netcdf' cd ../source; make libsharc make[1]: Entering directory/central/groups/hadtlab/TRS/software/sharc/source' Updating "build_info.inc" gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c definitions.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c matrix.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c string.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input_list.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c misc.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c output.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_afssh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_dom.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c nuclear.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm_out.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c restart.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c bsh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic_laser.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c zpe.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c army_ants.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c tsh_tu.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c pointer_basis.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c driver.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c definitions_NetCDF.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c interface.F90 gfortran -shared definitions.o matrix.o string.o input_list.o driver.o misc.o output.o restart.o qm_out.o nuclear.o bsh.o electronic.o qm.o electronic_laser.o input.o decoherence_afssh.o decoherence_dom.o zpe.o tsh_tu.o army_ants.o pointer_basis.o interface.o -o ../pysharc/lib/libsharc.so -llapack -lfftw3 -lblas -lgfortran -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -lhdf5 -lhdf5_hl -lmfhdf -ldf -ljpeg -L../pysharc/lib -lsharcnc -lnetcdf make[1]: Leaving directory `/central/groups/hadtlab/TRS/software/sharc/source' python sharc_setup build_ext --build-lib . running build_ext building 'sharc/sharc' extension creating build creating build/temp.linux-x86_64-cpython-39 creating build/temp.linux-x86_64-cpython-39/pysharc_src /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/bin/x86_64-conda-linux-gnu-cc -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -fPIC -O2 -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -fPIC -Iinclude -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include/python3.9 -c pysharc_src/pysharc.c -o build/temp.linux-x86_64-cpython-39/pysharc_src/pysharc.o -std=c99 -Wall In file included from pysharc_src/pysharc.c:338: pysharc_src/pysharc_QMout.c: In function 'QMout_init': pysharc_src/pysharc_QMout.c:143:18: warning: passing argument 1 of 'setPointers' from incompatible pointer type [-Wincompatible-pointer-types] 143 setPointers( (double complex **)H_ptr, ^~~~~~~~
_Complex double **
In file included from include/libsharc.h:25, from pysharc_src/pysharc.c:48: include/interface.h:60:26: note: expected 'void ' but argument is of type '_Complex double ' 60 void setPointers(void H, void dm, ~~~~^ pysharc_src/pysharc_QMout.c:144:18: warning: passing argument 2 of 'setPointers' from incompatible pointer type [-Wincompatible-pointer-types] 144 (double complex **)DM_ptr, ^~~~~~~~~
_Complex double **
include/interface.h:60:37: note: expected 'void ' but argument is of type '_Complex double ' 60 void setPointers(void H, void dm, ~~~~^~ pysharc_src/pysharc_QMout.c:145:18: warning: passing argument 3 of 'setPointers' from incompatible pointer type [-Wincompatible-pointer-types] 145 (double complex **)Ov_ptr, ^~~~~~~~~
_Complex double **
include/interface.h:61:26: note: expected 'void ' but argument is of type '_Complex double ' 61 void ** overlap, ~~^~~~~ pysharc_src/pysharc_QMout.c:146:18: warning: passing argument 4 of 'setPointers' from incompatible pointer type [-Wincompatible-pointer-types] 146 (double **)G_ptr, ^~~~
double **
include/interface.h:62:26: note: expected 'void ' but argument is of type 'double ' 62 void ** grad, ~~^~ pysharc_src/pysharc_QMout.c:147:18: warning: passing argument 5 of 'setPointers' from incompatible pointer type [-Wincompatible-pointer-types] 147 (double **)NACDR_ptr); ^~~~~~~~
double **
include/interface.h:63:26: note: expected 'void ' but argument is of type 'double ' 63 void ** nacs ~~^~ In file included from pysharc_src/pysharc.c:340: pysharc_src/pysharc_QMin.c: In function 'QMin_new': pysharc_src/pysharc_QMin.c:55:10: warning: assignment to 'QMin ' from incompatible pointer type 'QMout ' [-Wincompatible-pointer-types] 55 self = (QMout *)type->tp_alloc(type, 0); ^ pysharc_src/pysharc_QMin.c: In function 'QMin_init': pysharc_src/pysharc_QMin.c:77:22: warning: passing argument 1 of 'setQMinPointers' from incompatible pointer type [-Wincompatible-pointer-types] 77 setQMinPointers( (double **)Crd_ptr ); ^~~~~~
double **

include/interface.h:65:30: note: expected 'void ' but argument is of type 'double ' 65 | void setQMinPointers(void * Crd); | ~~^ pysharc_src/pysharc_QMout.c: In function 'QMout_set_nacdr': pysharc_src/pysharc_QMout.c:512:9: warning: 'state_state_nac' may be used uninitialized [-Wmaybe-uninitialized] 512 | free(state_state_nac); | ^~~~~ pysharc_src/pysharc_QMout.c:459:14: note: 'state_state_nac' was declared here 459 | double state_state_nac; | ^~~~~~~ pysharc_src/pysharc_QMout.c: In function 'QMout_set_gradient': pysharc_src/pysharc_QMout.c:304:9: warning: 'state_gradient' may be used uninitialized [-Wmaybe-uninitialized] 304 | free(state_gradient); | ^~~~~~~~ pysharc_src/pysharc_QMout.c:256:14: note: 'state_gradient' was declared here 256 | double state_gradient; | ^~~~~~ /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/bin/x86_64-conda-linux-gnu-cc -Wno-unused-result -Wsign-compare -DNDEBUG -fwrapv -O2 -Wall -fPIC -O2 -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -fPIC -O2 -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -fPIC -Iinclude -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include/python3.9 -c pysharc_src/pysharc_tools.c -o build/temp.linux-x86_64-cpython-39/pysharc_src/pysharc_tools.o -std=c99 -Wall /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/bin/x86_64-conda-linux-gnu-cc -shared -Wl,--allow-shlib-undefined -Wl,-rpath,/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -Wl,-rpath-link,/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -Wl,--allow-shlib-undefined -Wl,-rpath,/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -Wl,-rpath-link,/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,--disable-new-dtags -Wl,--gc-sections -Wl,--allow-shlib-undefined -Wl,-rpath,/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -Wl,-rpath-link,/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -march=nocona -mtune=haswell -ftree-vectorize -fPIC -fstack-protector-strong -fno-plt -O2 -ffunction-sections -pipe -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DNDEBUG -D_FORTIFY_SOURCE=2 -O2 -isystem /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include build/temp.linux-x86_64-cpython-39/pysharc_src/pysharc.o build/temp.linux-x86_64-cpython-39/pysharc_src/pysharc_tools.o -Llib -L$ANACONDA/lib -lsharc -o ./sharc/sharc.cpython-39-x86_64-linux-gnu.so cp lib/.so ../lib cp bin/*.py ../bin"

Please let me know if you need any other information from me about my compilation steps or other outputs. Thanks for your time!

Best, Thais

maisebastian commented 12 months ago

Dear Thais, I forwarded your issue to some colleagues. While I wait for their reply, have you tried going through the compilation with USE_PYSHARC=True from the beginning (i.e., using the first of the two installation variants)? Also, have you checked whether your compilation uses a system-installed gfortran/gcc or the gfortran/gcc of Anaconda? Best, Sebastian

maisebastian commented 12 months ago

Dear Thais, note that in principle, your compilation ran through successfully, the messages about the pointers are warnings, no errors. How have you tried to execute pysharc after the compilation? Can you supply us with the execution command and the error messages from pysharc? Best, Sebastian

thaiscott commented 12 months ago

Thanks for your quick reply!

I have tried compiling with the first installation variant, and this is the output I get from compiling the source folder first with pysharc=true.

(pysharc_3.0) [trscott@login1 source]$ make install Updating "build_info.inc" gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c definitions.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c matrix.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c string.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input_list.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c misc.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c output.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_afssh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_dom.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c nuclear.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm_out.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c restart.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c bsh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic_laser.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c zpe.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c army_ants.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c tsh_tu.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c pointer_basis.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c driver.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c definitions_NetCDF.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c interface.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c main.F90 gfortran definitions.o matrix.o string.o input_list.o driver.o misc.o output.o restart.o qm_out.o nuclear.o bsh.o electronic.o qm.o electronic_laser.o input.o decoherence_afssh.o decoherence_dom.o zpe.o tsh_tu.o army_ants.o pointer_basis.o interface.o main.o -o sharc2.x -llapack -lfftw3 -lblas -lgfortran -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -lhdf5 -lhdf5_hl -lmfhdf -ldf -ljpeg -L../pysharc/lib -lsharcnc -lnetcdf /usr/bin/ld: cannot find -lsharcnc collect2: error: ld returned 1 exit status make: *** [sharc] Error 1

This error was why I started with the second method of installation.

When I type which gfortran and type gfortran I get the system installed version (/usr/bin/gfortran), so I think that this is the version of gfortran that pysharc is finding. The version installed on the system is this one.

gfortran --version GNU Fortran (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) Copyright (C) 2015 Free Software Foundation, Inc.

The way that I have been testing the pysharc installation is with tests.py. I am running tests 11, 12, and 13. (This is testing with the second method of installation.)

I use source /bin/sharcvars.sh to set my environment variables. To verify this I check the SHARC, PYTHONPATH and LD_LIBRARY_PATH (pysharc_3.0) [trscott@login1 pysharc]$ echo $SHARC /groups/hadtlab/TRS/software/sharc/bin (pysharc_3.0) [trscott@login1 pysharc]$ echo $PYTHONPATH /groups/hadtlab/TRS/software/sharc/lib: (pysharc_3.0) [trscott@login1 pysharc]$ echo $LD_LIBRARY_PATH /groups/hadtlab/TRS/software/sharc/lib:/central/slurm/install/current/lib/:

I run tests.py and go through the interactive portion and input my scratch directory and point to the sharc installation. Test 11 runs but 12 and 13 fail.

|| Running test jobs... ||

/groups/hadtlab/TRS/software/sharc/bin/../tests/INPUT/LVC_overlap 2023-10-05 10:38:56.118537 2023-10-05 10:39:19.272447 Runtime: 0:00:23.153910 Error Code: 0

/central/groups/hadtlab/TRS/tests/sharc-tests/RUNNING_TESTS/LVC_pysharc OVERWRITTEN /groups/hadtlab/TRS/software/sharc/bin/../tests/INPUT/LVC_pysharc 2023-10-05 10:39:19.372363 2023-10-05 10:39:19.600786 Runtime: 0:00:00.228423 Error Code: 1

/groups/hadtlab/TRS/software/sharc/bin/../tests/INPUT/LVC_pysharc_netcdf 2023-10-05 10:39:19.646742 2023-10-05 10:39:19.846757 Runtime: 0:00:00.200015 Error Code: 1

================================================================================ || Test job analysis ||

------------------------LVC_overlap------------------------- /central/groups/hadtlab/TRS/tests/sharc-tests/RUNNING_TESTS/LVC_overlap/output.dat /groups/hadtlab/TRS/software/sharc/bin/../tests/RESULTS/LVC_overlap/output.dat Output and Reference have different length! ------------------------LVC_pysharc------------------------- Job did not finish successfully. Error code: 1

---------------------LVC_pysharc_netcdf--------------------- Job did not finish successfully. Error code: 1

================================================================================ || Summary ||

LVC_overlap Different output length. LVC_pysharc Job did not finish LVC_pysharc_netcdf Job did not finish

Both of the pysharc jobs finish have the following error in the run.err file:

Traceback (most recent call last): File "/groups/hadtlab/TRS/software/sharc/bin/pysharc_lvc.py", line 45, in from sharc.pysharc.interface import SHARC_INTERFACE ModuleNotFoundError: No module named 'sharc' cp: cannot stat ‘/central/scratch/trscott/TRAJ/output.*’: No such file or directory

Best, Thais

maisebastian commented 12 months ago

Dear Thais, have you sourced (not executed) $SHARC/sharcvars.sh before running the tests? This script sets a bunch of environment variables that are important for pysharc to find all relevant libraries. This might resolve the "No module named 'sharc'" error in your tests.

About the "first installation method": According to the manual, you need to compile in pysharc/ first, then switch to source/. Basically:

Best, Sebastian

thaiscott commented 12 months ago

Hi!

I did source $SHARC/sharcvars.sh and checked to make sure the environment variables were set appropriately. (pysharc_3.0) [trscott@login1 sharc-tests]$ echo $SHARC /groups/hadtlab/TRS/software/sharc/bin (pysharc_3.0) [trscott@login1 sharc-tests]$ echo $PYTHONPATH /groups/hadtlab/TRS/software/sharc/lib: (pysharc_3.0) [trscott@login1 sharc-tests]$ echo $LD_LIBRARY_PATH /groups/hadtlab/TRS/software/sharc/lib:/central/slurm/install/current/lib/:

Thanks for the clarification, I was doing that first version of the compilation incorrectly. When following the first installation by first doing make install in pysharc I get this output:

(pysharc_3.0) [trscott@login1 pysharc]$ make install cd ../source; make libsharc make[1]: Entering directory /central/groups/hadtlab/TRS/software/sharc/source' Updating "build_info.inc" gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -D__PYSHARC__ -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c definitions.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c matrix.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c string.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input_list.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -D__PYSHARC__ -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c misc.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c output.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_afssh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c decoherence_dom.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -D__PYSHARC__ -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c nuclear.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm_out.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c restart.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c qm.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c bsh.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c electronic_laser.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -D__PYSHARC__ -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c zpe.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c army_ants.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c tsh_tu.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c pointer_basis.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c driver.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c definitions_NetCDF.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -D__PYSHARC__ -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c interface.F90 gfortran -shared definitions.o matrix.o string.o input_list.o driver.o misc.o output.o restart.o qm_out.o nuclear.o bsh.o electronic.o qm.o electronic_laser.o input.o decoherence_afssh.o decoherence_dom.o zpe.o tsh_tu.o army_ants.o pointer_basis.o interface.o -o ../pysharc/lib/libsharc.so -llapack -lfftw3 -lblas -lgfortran -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -lhdf5 -lhdf5_hl -lmfhdf -ldf -ljpeg -L../pysharc/lib -lsharcnc -lnetcdf make[1]: Leaving directory/central/groups/hadtlab/TRS/software/sharc/source' python sharc_setup build_ext --build-lib . running build_ext cp lib/.so ../lib cp bin/.py ../bin

Then the make install in the source directory gives: Updating "build_info.inc" gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c output.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c input.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c driver.f90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c interface.F90 gfortran -I/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/include -DPYSHARC -O3 -fPIC -g -ffree-line-length-none -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -c main.F90 gfortran definitions.o matrix.o string.o input_list.o driver.o misc.o output.o restart.o qm_out.o nuclear.o bsh.o electronic.o qm.o electronic_laser.o input.o decoherence_afssh.o decoherence_dom.o zpe.o tsh_tu.o army_ants.o pointer_basis.o interface.o main.o -o sharc2.x -llapack -lfftw3 -lblas -lgfortran -L/groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib -lhdf5 -lhdf5_hl -lmfhdf -ldf -ljpeg -L../pysharc/lib -lsharcnc -lnetcdf /usr/bin/ld: warning: libcrypto.so.3, needed by /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libhdf5.so, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libzip.so.5, needed by /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so, not found (try using -rpath or -rpath-link) qm_out.o: In function __qm_out_MOD_goto_flag': /groups/hadtlab/TRS/software/sharc/source/qm_out.f90:163: undefined reference to_gfortran_stop_numeric_f08' qm_out.o: In function __qm_out_MOD_get_dipolegrad': /groups/hadtlab/TRS/software/sharc/source/qm_out.f90:565: undefined reference to_gfortran_stop_numeric_f08' qm_out.o: In function __qm_out_MOD_get_overlap': /groups/hadtlab/TRS/software/sharc/source/qm_out.f90:418: undefined reference to_gfortran_stop_numeric_f08' qm_out.o: In function __qm_out_MOD_get_nonadiabatic_ddr': /groups/hadtlab/TRS/software/sharc/source/qm_out.f90:389: undefined reference to_gfortran_stop_numeric_f08' qm_out.o: In function __qm_out_MOD_get_nonadiabatic_ddt': /groups/hadtlab/TRS/software/sharc/source/qm_out.f90:360: undefined reference to_gfortran_stop_numeric_f08' qm_out.o:/groups/hadtlab/TRS/software/sharc/source/qm_out.f90:333: more undefined references to _gfortran_stop_numeric_f08' follow /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_stat_init' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_close' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_fopen' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_fread' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_dir_add' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_get_error' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_discard' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_name_locate' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_source_buffer' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_stat_index' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libhdf5.so: undefined reference toHMAC@OPENSSL_3.0.0' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libhdf5.so: undefined reference to EVP_sha256@OPENSSL_3.0.0' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_error_init' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_error_fini' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_file_add' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_set_file_compression' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libhdf5.so: undefined reference toSHA256@OPENSSL_3.0.0' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_open' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_get_name' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_fclose' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_error_code_zip' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference to zip_get_num_entries' /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so: undefined reference tozip_source_free' collect2: error: ld returned 1 exit status make: *** [sharc] Error 1

I get the same errors in the in the run.err of the test modules with both versions of the installation.

Best, Thais

maisebastian commented 11 months ago

Hi Thais, thanks for the update. I'm sorry that the installation still does not work, but at least for me it is now a bit clearer.

In your latest installation log, the key lines are:

/usr/bin/ld: warning: libcrypto.so.3, needed by /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libhdf5.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libzip.so.5, needed by /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libnetcdf.so, not found (try using -rpath or -rpath-link)

Exactly the same error was recently reported to us by email - the same two libraries were missing even though the files were clearly present in the lib folder of the Conda installation. You can try to solve this issue by explicitly adding the missing libraries to your source/Makefile with their full path: NETCDF_LIB = ... -l /groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libcrypto.so.3 -l groups/hadtlab/TRS/miniconda/envs/pysharc_3.0/lib/libzip.so.5 ...

Hope this helps. Best, Sebastian