I am trying to use the KiFMM3D software with my code. I am compiling code in C++ and everything looks fine but I am getting an "no such file or directory" error regarding the KiFMM3d code. The exact error message is :
In file included from /ws/larryburns/cmake/ME/sc/T/../../inc/KIFMM3D/fmm3d/fmm3d.hpp:21:0,
from /ws/larryburns/cmake/ME/sc/T/../../inc/P/KiFmmWrapper.h:5,
...
from /ws/larryburns/cmake/ME/sc/T/PotGeoP.cpp:10:
/ws/larryburns/cmake/ME/sc/T/../../inc/KIFMM3D/fmm3d/knlmat3d.hpp:21:28: fatal error: common/vec3t.hpp: No such file or directory
compilation terminated.
The common/vec3t.hpp file is in both /ws/larryburns/cmake/ME/sc/KIFMM3D/common and /ws/guy/soft/KIFMM3D/common
In the KiFmmWrapper.h file, there is
#include "KIFMM3D/fmm3d/fmm3d.hpp"
.
I use `make` and `CMakeLists`, so I can't just type `g++ -Ic:/prog/boost1461 myfile.cpp` to deal with this issue.
In my directory ` /ws/larryburns/cmake/ME/Build/sc`, I have `CMakeLists.txt` as
ADD_SUBDIRECTORY (Ut)
ADD_SUBDIRECTORY (ASp)
..
I also have a `CMakeLists` in /ws/larryburns/cmake/ME/sc/ME/CMakeLists.txt
INCLUDE_DIRECTORIES(../../inc/KIFMM3D)
INCLUDE_DIRECTORIES(../../inc/KIFMM3D/common)
INCLUDE_DIRECTORIES(../../../../../guy/soft/kifmm3d)
INCLUDE_DIRECTORIES(../../../../../guy/soft/kifmm3d/common)
if(USE_MPI_KIFMM)
ADD_DEFINITIONS(-DWITH_MPI_KIFMM)
INCLUDE_DIRECTORIES(../../inc/KIFMM3D/fmm3d_mpi)
else(USE_MPI_KIFMM)
ADD_DEFINITIONS(-UWITH_MPI_KIFMM)
INCLUDE_DIRECTORIES(../../inc/KIFMM3D/fmm3d)
endif(USE_MPI_KIFMM)
whereas the KIFMM software seems to be installed in /ws/guy/soft/KIFMM3D. The cpp files for that 3rd-party software were also copied into the 3rdparty folder in /ws/larryburns/cmake/ME/sc/KIFMM3D
How can I fix this? Do I need to contact the makers of KiFMM3D?