Hi Matthias, I followed the steps you suggested so that expand_instantiations gave the output : Usage: expand_instantiations class_list_files < in_file > out_file
after which I changed to the regular build directory for building(all performed on an interactive compute node ) as cmake -DCMAKE_SYSTEM_NAME=CrayLinuxEnvironment -DCMAKE_C_COMPILER=cc -DCMAKE_CXX_COMPILER=CC -DCMAKE_Fortran_COMPILER=ftn -DDEAL_II_WITH_MPI=ON -DDEAL_II_WITH_PETSC=ON -DDEAL_II_WITH_P4EST=ON -DDEAL_II_WITH_LAPACK=ON -DCMAKE_INSTALL_PREFIX=/global/project/projectdirs/m2360/packagesCPFE/dealii_trial ../dealii which ran fine, after which the installation process make -j 8 install resulted in the following error : [100%] Built target obj_fe_debug [100%] Linking CXX shared library ../lib/libdeal_II.g.so /usr/bin/ld: cannot find -lAtpSigHandler /usr/bin/ld: cannot find -lAtpSigHCommData make[2]: *** [source/CMakeFiles/deal_II.dir/build.make:1283: lib/libdeal_II.so] Error 1 make[1]: *** [CMakeFiles/Makefile2:2978: source/CMakeFiles/deal_II.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... I am not sure what the above means. I contacted support at NERSC for help and he responded as follows : ----------------------------------------------------------------------------------------------------- The problem is that somewhere in the cmake files it's missing: ``` find_library(ATP_SIGHANDLER_LIBRARY NAMES AtpSigHandler) ``` and then you need to add ``` target_link_libraries(<Target> ${ATP_SIGHANDLER_LIBRARY}) ``` to the file that specifies the link step for `libdeal_II.g.so` I had a look at the cmake files, but it's a pretty complex setup. I think it might be best to reach out to the developers again, and get them to incorporate those changes for cray systems. ----------------------------------------------------------------------------------------------------- Thank you for your help. Best, Aaditya On Sunday, August 23, 2020 at 3:06:31 PM UTC-4 Matthias Maier wrote: > Hi, > > CMake's cross compilation features are unfortunately a bit limited. To > work around this you have to create an executable > "expand_instantiations" separately by doing for example the following in > the source directory: > > $ mkdir build-executable > $ cd build-executable > $ cmake .. > $ make expand_instantiations_exe > > After that export the executable to your path: > > $ export PATH="$PWD/bin:$PATH" > > when you now run "expand_instantiations" in your command prompt you > should get a help message: > > $ expand_instantiations > Usage: > expand_instantiations class_list_files < in_file > out_file > > If all that works out switch to the actual build directory (in the same > terminal) and compile. > > This should take care of the following error: > > > /bin/sh: expand_instantiations: command not found > > make[2]: *** > > Best, > Matthias > > > > -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en --- You received this message because you are subscribed to the Google Groups "deal.II User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to dealii+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/2797be57-af84-4037-badd-1a875b130fb6n%40googlegroups.com.