Closed cccchou closed 3 months ago
You might need to also load the git submodule with this command:
git submodule update --init --recursive
i had added SCTL.cpp to the usr/include,but now it has variety problems:
[ 3%] Building CXX object CMakeFiles/pvfmm.dir/src/cheb_utils.cpp.o
[ 6%] Building CXX object CMakeFiles/pvfmm.dir/src/device_wrapper.cpp.o
[ 10%] Building CXX object CMakeFiles/pvfmm.dir/src/legendre_rule.cpp.o
[ 13%] Building CXX object CMakeFiles/pvfmm.dir/src/mem_mgr.cpp.o
[ 16%] Building CXX object CMakeFiles/pvfmm.dir/src/mortonid.cpp.o
[ 20%] Building CXX object CMakeFiles/pvfmm.dir/src/profile.cpp.o
[ 23%] Building CXX object CMakeFiles/pvfmm.dir/src/pvfmm-wrapper.cpp.o
[ 26%] Building CXX object CMakeFiles/pvfmm.dir/src/tree_node.cpp.o
[ 30%] Linking CXX shared library libpvfmm.so
/usr/bin/ld: CMakeFiles/pvfmm.dir/src/device_wrapper.cpp.o: in function sctl::VTUData::test()': device_wrapper.cpp:(.text+0x0): multiple definition of
sctl::VTUData::test()'; CMakeFiles/pvfmm.dir/src/cheb_utils.cpp.o:cheb_utils.cpp:(.text+0x0): first defined here
/usr/bin/ld: CMakeFiles/pvfmm.dir/src/device_wrapper.cpp.o: in function sctl::FFT<double>::~FFT()': device_wrapper.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::~FFT()': device_wrapper.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::Setup(sctl::FFT_Type, long, sctl::Vector<long> const&, long)': device_wrapper.cpp:(.text+0x382): multiple definition of
sctl::FFTsctl::FFT<double>::Execute(sctl::Vector<double> const&, sctl::Vector<double>&) const': device_wrapper.cpp:(.text+0x1050): multiple definition of
sctl::FFTsctl::VTUData::test()': mem_mgr.cpp:(.text+0x0): multiple definition of
sctl::VTUData::test()'; CMakeFiles/pvfmm.dir/src/cheb_utils.cpp.o:cheb_utils.cpp:(.text+0x0): first defined here
/usr/bin/ld: CMakeFiles/pvfmm.dir/src/mem_mgr.cpp.o: in function sctl::FFT<double>::~FFT()': mem_mgr.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::~FFT()': mem_mgr.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::Setup(sctl::FFT_Type, long, sctl::Vector<long> const&, long)': mem_mgr.cpp:(.text+0x382): multiple definition of
sctl::FFTsctl::FFT<double>::Execute(sctl::Vector<double> const&, sctl::Vector<double>&) const': mem_mgr.cpp:(.text+0x1050): multiple definition of
sctl::FFTsctl::VTUData::test()': mortonid.cpp:(.text+0x0): multiple definition of
sctl::VTUData::test()'; CMakeFiles/pvfmm.dir/src/cheb_utils.cpp.o:cheb_utils.cpp:(.text+0x0): first defined here
/usr/bin/ld: CMakeFiles/pvfmm.dir/src/mortonid.cpp.o: in function sctl::FFT<double>::~FFT()': mortonid.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::~FFT()': mortonid.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::Setup(sctl::FFT_Type, long, sctl::Vector<long> const&, long)': mortonid.cpp:(.text+0x382): multiple definition of
sctl::FFTsctl::FFT<double>::Execute(sctl::Vector<double> const&, sctl::Vector<double>&) const': mortonid.cpp:(.text+0x1050): multiple definition of
sctl::FFTsctl::VTUData::test()': profile.cpp:(.text+0x0): multiple definition of
sctl::VTUData::test()'; CMakeFiles/pvfmm.dir/src/cheb_utils.cpp.o:cheb_utils.cpp:(.text+0x0): first defined here
/usr/bin/ld: CMakeFiles/pvfmm.dir/src/profile.cpp.o: in function sctl::FFT<double>::~FFT()': profile.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::~FFT()': profile.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::Setup(sctl::FFT_Type, long, sctl::Vector<long> const&, long)': profile.cpp:(.text+0x382): multiple definition of
sctl::FFTsctl::FFT<double>::Execute(sctl::Vector<double> const&, sctl::Vector<double>&) const': profile.cpp:(.text+0x1050): multiple definition of
sctl::FFTsctl::VTUData::test()': pvfmm-wrapper.cpp:(.text+0x0): multiple definition of
sctl::VTUData::test()'; CMakeFiles/pvfmm.dir/src/cheb_utils.cpp.o:cheb_utils.cpp:(.text+0x0): first defined here
/usr/bin/ld: CMakeFiles/pvfmm.dir/src/pvfmm-wrapper.cpp.o: in function sctl::FFT<double>::~FFT()': pvfmm-wrapper.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::~FFT()': pvfmm-wrapper.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::Setup(sctl::FFT_Type, long, sctl::Vector<long> const&, long)': pvfmm-wrapper.cpp:(.text+0x382): multiple definition of
sctl::FFTsctl::FFT<double>::Execute(sctl::Vector<double> const&, sctl::Vector<double>&) const': pvfmm-wrapper.cpp:(.text+0x1050): multiple definition of
sctl::FFTsctl::VTUData::test()': tree_node.cpp:(.text+0x0): multiple definition of
sctl::VTUData::test()'; CMakeFiles/pvfmm.dir/src/cheb_utils.cpp.o:cheb_utils.cpp:(.text+0x0): first defined here
/usr/bin/ld: CMakeFiles/pvfmm.dir/src/tree_node.cpp.o: in function sctl::FFT<double>::~FFT()': tree_node.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::~FFT()': tree_node.cpp:(.text+0x324): multiple definition of
sctl::FFTsctl::FFT<double>::Setup(sctl::FFT_Type, long, sctl::Vector<long> const&, long)': tree_node.cpp:(.text+0x382): multiple definition of
sctl::FFTsctl::FFT<double>::Execute(sctl::Vector<double> const&, sctl::Vector<double>&) const': tree_node.cpp:(.text+0x1050): multiple definition of
sctl::FFT
I have updated PVFMM and SCTL to fix those errors. See if it works for you now.
I have updated PVFMM and SCTL to fix those errors. See if it works for you now.
Yes i compiled successfully. but i have a question: when i compile the example2 from /examples/src, it shows no fftw_mkl.hpp, how can i resolve it ?
Do you mean "fftw3_mkl.h"? The header file should come with the Intel MKL library. You can try to find the file on your machine and provide the path to the compiler using the flag "-I
when i compile the library, it shows no include sctl.hpp, how can i solve this issue? /home/alex/dev/pvfmm/include/pvfmm_common.hpp:64:10: fatal error: sctl.hpp: No such file or directory 64 | #include
| ^
~~~~~ compilation terminated.