Installation Error, coupling_model_liggghts.cpp can't find modify.h functions

Submitted by fturney on Tue, 10/31/2017 - 11:04

It seems Parscale is not able to correctly call the functions in the LIGGGHTS namespace.

After running ./refresh.sh in src,

make[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
coupling_model_liggghts.o: In function `PASCAL_NS::CouplingModelLiggghts::init()':
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:96: undefined reference to
`LAMMPS_NS::Modify::find_fix_style_strict(char const*, int)'
coupling_model_liggghts.o: In function `PASCAL_NS::CouplingModelLiggghts::pull_n_bodies(int&, int&, int&)':
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:114: undefined reference to `lammps_extract_global'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:115: undefined reference to `lammps_extract_global'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:116: undefined reference to `lammps_extract_global'
coupling_model_liggghts.o: In function `PASCAL_NS::CouplingModelLiggghts::pull_box(double*, double*, double*, double*)':
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:132: undefined reference to `lammps_extract_global'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:136: undefined reference to `lammps_extract_global'
coupling_model_liggghts.o:/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:141: more undefined references to `lammps_extract_global' follow
coupling_model_liggghts.o: In function `PASCAL_NS::CouplingModelLiggghts::dump_container_to_coupling(PASCAL_NS::ContainerBase&) const':
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:626: undefined reference to `LAMMPS_NS::FixParScaleCouple::find_pull_property(char const*, char const*, int&, int&)'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:509: undefined reference to `LAMMPS_NS::FixParScaleCouple::find_pull_property(char const*, char const*, int&, int&)'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:567: undefined reference to `LAMMPS_NS::FixParScaleCouple::find_pull_property(char const*, char const*, int&, int&)'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:681: undefined reference to `LAMMPS_NS::FixParScaleCouple::find_pull_property(char const*, char const*, int&, int&)'
coupling_model_liggghts.o: In function `PASCAL_NS::CouplingModelLiggghts::fill_container_from_coupling(PASCAL_NS::ContainerBase&) const':
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:263: undefined reference to `LAMMPS_NS::FixParScaleCouple::find_push_property(char const*, char const*, int&, int&)'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:335: undefined reference to `LAMMPS_NS::FixParScaleCouple::find_pull_property(char const*, char const*, int&, int&)'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:339: undefined reference to `LAMMPS_NS::FixParScaleCouple::find_pull_property(char const*, char const*, int&, int&)'
coupling_model_liggghts.o: In function `PASCAL_NS::CouplingModelLiggghts::get_external_map(int&)':
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:202: undefined reference to `LAMMPS_NS::FixParScaleCouple::get_liggghts_map(int&)'
/home/fturney/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src/Obj_fedora_fpic/../coupling_model_liggghts.cpp:202: undefined reference to `LAMMPS_NS::FixParScaleCouple::get_liggghts_map(int&)'
collect2: error: ld returned 1 exit status
make[1]: *** [../pasc_fedora_fpic] Error 1
make: *** [fedora_fpic] Error 2
root@climate:~/LIGGGHTS-PUBLIC/PARSCALE-PUBLIC/src#

When I checked modify.cpp in the LIGGGHTS source directory it did not contain the definition for find_fix_style_strict (second error message). However, that definition was contained in modify_liggghts.cpp which did not have a header file. I tried to include the .cpp in coupling_model_liggghts.cpp but it caused a ton more errors to appear. I've checked the includes on coupling_model_liggghts.cpp and coupling_model_liggghts.h and I'm fairly sure they lead to the right places but the problem still persists. Any ideas on what the problem could be?

Francis