Hi all (and in particular @ax3l )
I've been having some painful experience building warpx with openpmd support on our cluster at WIS. Here is what i'm doing:
- clone, bootstrap and source spack
- load a recent gcc compiler
module load gcc/8.3.0
- find/add this gcc@8.3.0 to spack and add lib paths to
.spack/linux/compilers.yaml (that appeared to be necessary):
extra_rpaths:
- /apps/RH7U2/gnu/gcc/8.3.0/lib/gcc/x86_64-pc-linux-gnu/8.3.0/
- /apps/RH7U2/gnu/gcc/8.3.0/lib64/
- install openPMD-api via spack (set cmake to 3.13, cause default-now 3.15 is not stable):
spack install openpmd-api %gcc@8.3.0 -shared -json -python ^hdf5+mpi ^openmpi ^cmake@3.13.0
- go and build warpx with openPMD,
make -j 4 DIM=2 USE_OPENPMD=TRUE
It does all compilation without any remarks and then, on the linking stage fails with:
/home/labs/malkalab/feigor/src/warpx_directory/openPMD-install/lib64/libopenPMD.a(HDF5IOHandler.cpp.o): In function `openPMD::HDF5IOHandlerImpl::readAttribute(openPMD::Writable*, openPMD::Parameter<(openPMD::Operation)16>&)':
HDF5IOHandler.cpp:(.text+0x4830): undefined reference to `H5free_memory'
HDF5IOHandler.cpp:(.text+0x483a): undefined reference to `H5free_memory'
/home/labs/malkalab/feigor/src/warpx_directory/openPMD-install/lib64/libopenPMD.a(HDF5IOHandler.cpp.o): In function `openPMD::HDF5IOHandlerImpl::createDataset(openPMD::Writable*, openPMD::Parameter<(openPMD::Operation)7> const&)':
HDF5IOHandler.cpp:(.text+0x751a): undefined reference to `H5P_CLS_DATASET_CREATE_ID_g'
/home/labs/malkalab/feigor/src/warpx_directory/openPMD-install/lib64/libopenPMD.a(ParallelHDF5IOHandler.cpp.o): In function `openPMD::ParallelHDF5IOHandlerImpl::ParallelHDF5IOHandlerImpl(openPMD::AbstractIOHandler*, ompi_communicator_t*)':
ParallelHDF5IOHandler.cpp:(.text+0x5ea): undefined reference to `H5P_CLS_DATASET_XFER_ID_g'
ParallelHDF5IOHandler.cpp:(.text+0x605): undefined reference to `H5P_CLS_FILE_ACCESS_ID_g'
ParallelHDF5IOHandler.cpp:(.text+0x625): undefined reference to `H5Pset_dxpl_mpio'
ParallelHDF5IOHandler.cpp:(.text+0x643): undefined reference to `H5Pset_fapl_mpio'
collect2: error: ld returned 1 exit status
make: *** [main2d.gnu.TPROF.MPI.OMP.ex] Error 1
this all looks like an ldconfig problem, but i've no idea how to tweak with it..
Hi all (and in particular @ax3l )
I've been having some painful experience building
warpxwith openpmd support on our cluster at WIS. Here is what i'm doing:module load gcc/8.3.0.spack/linux/compilers.yaml(that appeared to be necessary):spack install openpmd-api %gcc@8.3.0 -shared -json -python ^hdf5+mpi ^openmpi ^cmake@3.13.0make -j 4 DIM=2 USE_OPENPMD=TRUEIt does all compilation without any remarks and then, on the linking stage fails with:
this all looks like an
ldconfigproblem, but i've no idea how to tweak with it..