VLOGroup / imageutilities

GNU Lesser General Public License v3.0
17 stars 9 forks source link

No matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int) #13

Closed satabios closed 3 years ago

satabios commented 3 years ago

I'm Trying to "make" imageutilities for dvs-reconstruction. OS: Ubuntu 18.04 nvcc : 10.0 Opencv was built with shared libraries all the paths are recommended in readme are set. I've changes to the file "imageutilities/src/ndarray/ndarray_mem.cpp' and replaced #include with #include . Then it runs into this problem.

`

[ 82%] Building CXX object tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/ndarray_example.cpp.o In file included from /usr/local/cuda-10.0/include/cufft.h:59:0, from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/../iucutil.h:5, from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/lineardevicememory.h:7, from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:8, from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /usr/local/cuda-10.0/include/cuComplex.h: In function ‘float cuCabsf(cuFloatComplex)’: /usr/local/cuda-10.0/include/cuComplex.h:177:15: warning: comparing floating point with == or != is unsafe [-Wfloat-equal] if ((v == 0.0f) || (v > 3.402823466e38f) || (w > 3.402823466e38f)) { ^~~~ /usr/local/cuda-10.0/include/cuComplex.h: In function ‘double cuCabs(cuDoubleComplex)’: /usr/local/cuda-10.0/include/cuComplex.h:285:15: warning: comparing floating point with == or != is unsafe [-Wfloat-equal] if ((v == 0.0) || ^~~ In file included from /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3:0: /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h: In constructor ‘iu::VolumeCpu<type, Allocator>::VolumeCpu(const ndarray_ref<PixelType, 3>&)’: /media/14tb/sathya/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:191:16: error: no matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int)’ :Volume(size(0), size(1), size(2)), ext_datapointer(true){`

vigneshkgith commented 3 years ago

Hey , I am having a similar problem with the make process, I have Ubuntu 18.04, Cuda 10.1... I commented the #include in ndarray.mem.cpp as it was throwing errors.

[ 81%] Building CXX object tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/ndarray_example.cpp.o In file included from /usr/local/cuda/include/cufft.h:59:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/../iucutil.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/lineardevicememory.h:7, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:8, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /usr/local/cuda/include/cuComplex.h: In function ‘float cuCabsf(cuFloatComplex)’: /usr/local/cuda/include/cuComplex.h:179:15: warning: comparing floating point with == or != is unsafe [-Wfloat-equal] if ((v == 0.0f) || (v > 3.402823466e38f) || (w > 3.402823466e38f)) { ^~~~ /usr/local/cuda/include/cuComplex.h: In function ‘double cuCabs(cuDoubleComplex)’: /usr/local/cuda/include/cuComplex.h:287:15: warning: comparing floating point with == or != is unsafe [-Wfloat-equal] if ((v == 0.0) || ^~~ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3:0: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h: In constructor ‘iu::VolumeCpu<type, Allocator>::VolumeCpu(const ndarray_ref<PixelType, 3>&)’: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:191:16: error: no matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int)’ :Volume(size(0), size(1), size(2)), ext_datapointer(true){ ^ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume_cpu.h:3:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:14, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate: iu::Size<3> iu::Volume::size() const iu::Size<3> size() const ^~~~ /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate expects 0 arguments, 1 provided In file included from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3:0: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:191:25: error: no matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int)’ :Volume(size(0), size(1), size(2)), ext_datapointer(true){ ^ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume_cpu.h:3:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:14, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate: iu::Size<3> iu::Volume::size() const iu::Size<3> size() const ^~~~ /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate expects 0 arguments, 1 provided In file included from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3:0: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:191:34: error: no matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int)’ :Volume(size(0), size(1), size(2)), ext_datapointer(true){ ^ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume_cpu.h:3:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:14, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate: iu::Size<3> iu::Volume::size() const iu::Size<3> size() const ^~~~ /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate expects 0 arguments, 1 provided compilation terminated due to -fmax-errors=3. tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/build.make:940: recipe for target 'tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/ndarray_example.cpp.o' failed make[2]: [tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/ndarray_example.cpp.o] Error 1 CMakeFiles/Makefile2:833: recipe for target 'tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/all' failed make[1]: [tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/all] Error 2 Makefile:159: recipe for target 'all' failed make: *** [all] Error 2

satabios commented 3 years ago

Hey , I am having a similar problem with the make process, I have Ubuntu 18.04, Cuda 10.1... I commented the #include in ndarray.mem.cpp as it was throwing errors.

[ 81%] Building CXX object tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/ndarray_example.cpp.o In file included from /usr/local/cuda/include/cufft.h:59:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/../iucutil.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/lineardevicememory.h:7, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:8, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /usr/local/cuda/include/cuComplex.h: In function ‘float cuCabsf(cuFloatComplex)’: /usr/local/cuda/include/cuComplex.h:179:15: warning: comparing floating point with == or != is unsafe [-Wfloat-equal] if ((v == 0.0f) || (v > 3.402823466e38f) || (w > 3.402823466e38f)) { ^~~~ /usr/local/cuda/include/cuComplex.h: In function ‘double cuCabs(cuDoubleComplex)’: /usr/local/cuda/include/cuComplex.h:287:15: warning: comparing floating point with == or != is unsafe [-Wfloat-equal] if ((v == 0.0) || ^~~ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3:0: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h: In constructor ‘iu::VolumeCpu<type, Allocator>::VolumeCpu(const ndarray_ref<PixelType, 3>&)’: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:191:16: error: no matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int)’ :Volume(size(0), size(1), size(2)), ext_datapointer(true){ ^ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume_cpu.h:3:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:14, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate: iu::Size<3> iu::Volume::size() const iu::Size<3> size() const ^~~~ /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate expects 0 arguments, 1 provided In file included from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3:0: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:191:25: error: no matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int)’ :Volume(size(0), size(1), size(2)), ext_datapointer(true){ ^ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume_cpu.h:3:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:14, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate: iu::Size<3> iu::Volume::size() const iu::Size<3> size() const ^~~~ /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate expects 0 arguments, 1 provided In file included from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3:0: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:191:34: error: no matching function for call to ‘iu::VolumeCpu<type, Allocator>::size(int)’ :Volume(size(0), size(1), size(2)), ext_datapointer(true){ ^ In file included from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume_cpu.h:3:0, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/memorydefs.h:14, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iudefs.h:5, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore.h:3, from /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/ndarray_iu.h:6, from /media/algos/dvs-reconstruction/imageutilities/tests/ndarrayTest/ndarray_example.cpp:3: /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate: iu::Size<3> iu::Volume::size() const iu::Size<3> size() const ^~~~ /media/algos/dvs-reconstruction/imageutilities/tests/../src/ndarray/../iucore/volume.h:73:15: note: candidate expects 0 arguments, 1 provided compilation terminated due to -fmax-errors=3. tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/build.make:940: recipe for target 'tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/ndarray_example.cpp.o' failed make[2]: [tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/ndarray_example.cpp.o] Error 1 CMakeFiles/Makefile2:833: recipe for target 'tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/all' failed make[1]: [tests/ndarrayTest/CMakeFiles/ndarrayTest.dir/all] Error 2 Makefile:159: recipe for target 'all' failed make: *** [all] Error 2

Can you try editing device_functions.hpp to device_functions.h; And reproduce the results?

vigneshkgith commented 3 years ago

Yeah I tried that, getting the same error as above ..

satabios commented 3 years ago

I changed the gcc version from 5.5 to 4.9. But ended up with

CMakeFiles/test_iterator.dir/test_iterator_generated_test_iterator.cu.o: In functiontest_iterator()': test_iterator.cudafe1.cpp:(.text+0x8f1): undefined reference to memory::journal_info(void*)' CMakeFiles/test_iterator.dir/test_iterator_generated_test_iterator.cu.o: In functionvoid print_array<float, 3, std::ostream>(std::ostream&, ndarray_ref<float, 3> const&)': test_iterator.cudafe1.cpp:(.text._Z11print_arrayIfLi3ESoEvRT1_RK11ndarray_refIT_XT0_EE[_Z11print_arrayIfLi3ESoEvRT1_RK11ndarray_refIT_XT0_EE]+0x4a): undefined reference to demangle(char const*)' CMakeFiles/test_iterator.dir/test_iterator_generated_test_iterator.cu.o: In functionndarray<float, 3>::~ndarray()': test_iterator.cudafe1.cpp:(.text._ZN7ndarrayIfLi3EED2Ev[_ZN7ndarrayIfLi3EED5Ev]+0xe5): undefined reference to memory::journal_info(void*)' collect2: error: ld returned 1 exit status src/ndarray/CMakeFiles/test_iterator.dir/build.make:785: recipe for target 'src/ndarray/test_iterator' failed make[2]: *** [src/ndarray/test_iterator] Error 1 CMakeFiles/Makefile2:444: recipe for target 'src/ndarray/CMakeFiles/test_iterator.dir/all' failed make[1]: *** [src/ndarray/CMakeFiles/test_iterator.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2

satabios commented 3 years ago

Also add the flag cmake .. -DENABLE_CUDA=OFF, this did the magic.

reini1305 commented 3 years ago

If you only want to build imageutilities for dvs-reconstruction, you can switch off ndarray completely (IU_USE_NDARRAY to OFF with ccmake). You want to keep CUDA enabled though.

satabios commented 3 years ago

If you only want to build imageutilities for dvs-reconstruction, you can switch off ndarray completely (IU_USE_NDARRAY to OFF with ccmake). You want to keep CUDA enabled though.

Would the command be cmake .. -IU_USE_NDARRAY=OFF

satabios commented 3 years ago

If you only want to build imageutilities for dvs-reconstruction, you can switch off ndarray completely (IU_USE_NDARRAY to OFF with ccmake). You want to keep CUDA enabled though.

If CUDA is enabled, It results in

`In file included from /mnt/62E2AC72E2AC4BDB/DAVIS/dvs-reconstruction/imageutilities/src/iumath/thrust_kernels.cuh:8:0, from /mnt/62E2AC72E2AC4BDB/DAVIS/dvs-reconstruction/imageutilities/src/iumath/arithmetics.cuh:7, from /mnt/62E2AC72E2AC4BDB/DAVIS/dvs-reconstruction/imageutilities/src/iumath.cu:5: /mnt/62E2AC72E2AC4BDB/DAVIS/dvs-reconstruction/imageutilities/src/iuhelpermath.h:5:25: fatal error: helper_math.h: No such file or directory

include

                     ^

compilation terminated. CMake Error at iumath_generated_iumath.cu.o.Release.cmake:215 (message): Error generating /mnt/62E2AC72E2AC4BDB/DAVIS/dvs-reconstruction/imageutilities/build/src/CMakeFiles/iumath.dir//./iumath_generated_iumath.cu.o

src/CMakeFiles/iumath.dir/build.make:865: recipe for target 'src/CMakeFiles/iumath.dir/iumath_generated_iumath.cu.o' failed make[2]: [src/CMakeFiles/iumath.dir/iumath_generated_iumath.cu.o] Error 1 CMakeFiles/Makefile2:103: recipe for target 'src/CMakeFiles/iumath.dir/all' failed make[1]: [src/CMakeFiles/iumath.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2`

reini1305 commented 3 years ago

Can you post the output of ccmake ..? It looks like your CUDA directory is not set correctly.

satabios commented 3 years ago

Can you post the output of ccmake ..? It looks like your CUDA directory is not set correctly.

CMAKE_BUILD_TYPE
CMAKE_INSTALL_PREFIX /mnt/62E2AC72E2AC4BDB/DAVIS/dvs-reconstruction/imageutilities
CUDA_HOST_COMPILER /usr/bin/cc
CUDA_SDK_ROOT_DIR CUDA_SDK_ROOT_DIR-NOTFOUND
CUDA_TOOLKIT_ROOT_DIR /usr/local/cuda-9.2
CUDA_USE_STATIC_CUDA_RUNTIME ON
CUDA_rt_LIBRARY /usr/lib/x86_64-linux-gnu/librt.so
Eigen3_DIR Eigen3_DIR-NOTFOUND
IU_BUILD_STATIC OFF
IU_INSTALL_LOCAL ON
IU_USE_GUI ON
IU_USE_IO ON
IU_USE_MATH ON
IU_USE_NDARRAY ON
OpenCV_DIR /usr/local/share/OpenCV
Qt5Core_DIR /home/sathya/anaconda3/lib/cmake/Qt5Core
Qt5Gui_DIR /home/sathya/anaconda3/lib/cmake/Qt5Gui
Qt5OpenGL_DIR /home/sathya/anaconda3/lib/cmake/Qt5OpenGL
Qt5Widgets_DIR /home/sathya/anaconda3/lib/cmake/Qt5Widgets
WITH_FLYCAPTURE2 OFF
WITH_MATLAB OFF
WITH_OPENEXR ON
WITH_PYTHON OFF

satabios commented 3 years ago

If you only want to build imageutilities for dvs-reconstruction, you can switch off ndarray completely (IU_USE_NDARRAY to OFF with ccmake). You want to keep CUDA enabled though.

I set IU_USE_NDARRAY with ccmake. I still face the same "fatal error: helper_math.h: No such file or directory" error.

reini1305 commented 3 years ago

Please set the CUDA_SDK_ROOT_DIR to where you've installed the SDK. The helper_math.h is searched for there.

satabios commented 3 years ago

setting up the CUDA SDK path solved it. But upon make -j6 on dvs-reconstruction I get

CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionboost::program_options::typed_value<std::string, char>::xparse(boost::any&, std::vector<std::string, std::allocator > const&) const': offline_reconstruction.cpp:(.text._ZNK5boost15program_options11typed_valueISscE6xparseERNS_3anyERKSt6vectorISsSaISsEE[_ZNK5boost15program_options11typed_valueISscE6xparseERNS_3anyERKSt6vectorISsSaISsEE]+0x19): undefined reference to boost::program_options::validate(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, std::string*, int)' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionboost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t, std::string const&, std::string const&, int)': offline_reconstruction.cpp:(.text._ZN5boost15program_options16validation_errorC2ENS1_6kind_tERKSsS4_i[_ZN5boost15program_options16validation_errorC5ENS1_6kind_tERKSsS4_i]+0x31): undefined reference to boost::program_options::validation_error::get_template(boost::program_options::validation_error::kind_t)' offline_reconstruction.cpp:(.text._ZN5boost15program_options16validation_errorC2ENS1_6kind_tERKSsS4_i[_ZN5boost15program_options16validation_errorC5ENS1_6kind_tERKSsS4_i]+0x49): undefined reference toboost::program_options::error_with_option_name::error_with_option_name(std::string const&, std::string const&, std::string const&, int)' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In function boost::program_options::basic_command_line_parser<char>::basic_command_line_parser(int, char const* const*)': offline_reconstruction.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcEC2EiPKPKc[_ZN5boost15program_options25basic_command_line_parserIcEC5EiPKPKc]+0x14c): undefined reference toboost::program_options::to_internal(std::string const&)' offline_reconstruction.cpp:(.text._ZN5boost15program_options25basic_command_line_parserIcEC2EiPKPKc[_ZN5boost15program_options25basic_command_line_parserIcEC5EiPKPKc]+0x1ff): undefined reference to boost::program_options::detail::cmdline::cmdline(std::vector<std::string, std::allocator<std::string> > const&)' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionboost::program_options::typed_value<std::string, char>::name() const': offline_reconstruction.cpp:(.text._ZNK5boost15program_options11typed_valueISscE4nameEv[_ZNK5boost15program_options11typed_valueISscE4nameEv]+0x29): undefined reference to boost::program_options::arg' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionboost::program_options::typed_value<int, char>::name() const': offline_reconstruction.cpp:(.text._ZNK5boost15program_options11typed_valueIicE4nameEv[_ZNK5boost15program_options11typed_valueIicE4nameEv]+0x29): undefined reference to boost::program_options::arg' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionboost::program_options::typed_value<double, char>::name() const': offline_reconstruction.cpp:(.text._ZNK5boost15program_options11typed_valueIdcE4nameEv[_ZNK5boost15program_options11typed_valueIdcE4nameEv]+0x29): undefined reference to boost::program_options::arg' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionmain': offline_reconstruction.cpp:(.text.startup+0x64): undefined reference to boost::program_options::options_description::options_description(std::string const&, unsigned int, unsigned int)' offline_reconstruction.cpp:(.text.startup+0x67b): undefined reference toboost::program_options::abstract_variables_map::operator[](std::string const&) const' offline_reconstruction.cpp:(.text.startup+0x6cd): undefined reference to boost::program_options::abstract_variables_map::operator[](std::string const&) const' offline_reconstruction.cpp:(.text.startup+0x71f): undefined reference toboost::program_options::abstract_variables_map::operator[](std::string const&) const' offline_reconstruction.cpp:(.text.startup+0x779): undefined reference to boost::program_options::abstract_variables_map::operator[](std::string const&) const' offline_reconstruction.cpp:(.text.startup+0x7d3): undefined reference toboost::program_options::abstract_variables_map::operator[](std::string const&) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:offline_reconstruction.cpp:(.text.startup+0x82d): more undefined references to boost::program_options::abstract_variables_map::operator[](std::string const&) const' follow CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionvoid boost::program_options::validate<int, char>(boost::any&, std::vector<std::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::basic_string<char, std::char_traits, std::allocator > > > const&, int, long)': offline_reconstruction.cpp:(.text._ZN5boost15program_options8validateIicEEvRNS_3anyERKSt6vectorISbIT0_St11char_traitsIS5_ESaIS5_EESaIS9_EEPT_l[_ZN5boost15program_options8validateIicEEvRNS_3anyERKSt6vectorISbIT0_St11char_traitsIS5_ESaIS5_EESaIS9_EEPT_l]+0x596): undefined reference to boost::program_options::invalid_option_value::invalid_option_value(std::string const&)' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o: In functionvoid boost::program_options::validate<double, char>(boost::any&, std::vector<std::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::basic_string<char, std::char_traits, std::allocator > > > const&, double, long)': offline_reconstruction.cpp:(.text._ZN5boost15program_options8validateIdcEEvRNS_3anyERKSt6vectorISbIT0_St11char_traitsIS5_ESaIS5_EESaIS9_EEPT_l[_ZN5boost15program_options8validateIdcEEvRNS_3anyERKSt6vectorISbIT0_St11char_traitsIS5_ESaIS5_EESaIS9_EEPT_l]+0x3ac): undefined reference to boost::program_options::invalid_option_value::invalid_option_value(std::string const&)' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost16exception_detail19error_info_injectorINS_15program_options20invalid_option_valueEEE[_ZTVN5boost16exception_detail19error_info_injectorINS_15program_options20invalid_option_valueEEE]+0x30): undefined reference toboost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options20invalid_option_valueEEEEE[_ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options20invalid_option_valueEEEEE]+0x38): undefined reference to boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost16exception_detail19error_info_injectorINS_15program_options16validation_errorEEE[_ZTVN5boost16exception_detail19error_info_injectorINS_15program_options16validation_errorEEE]+0x30): undefined reference toboost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options16validation_errorEEEEE[_ZTVN5boost16exception_detail10clone_implINS0_19error_info_injectorINS_15program_options16validation_errorEEEEE]+0x38): undefined reference to boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost15program_options16validation_errorE[_ZTVN5boost15program_options16validation_errorE]+0x30): undefined reference toboost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost15program_options20invalid_option_valueE[_ZTVN5boost15program_options20invalid_option_valueE]+0x30): more undefined references to boost::program_options::error_with_option_name::substitute_placeholders(std::string const&) const' follow CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost15program_options11typed_valueISscEE[_ZTVN5boost15program_options11typed_valueISscEE]+0x38): undefined reference toboost::program_options::value_semantic_codecvt_helper::parse(boost::any&, std::vector<std::string, std::allocator > const&, bool) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost15program_options11typed_valueIicEE[_ZTVN5boost15program_options11typed_valueIicEE]+0x38): undefined reference to boost::program_options::value_semantic_codecvt_helper<char>::parse(boost::any&, std::vector<std::string, std::allocator<std::string> > const&, bool) const' CMakeFiles/offline_reconstruction.dir/offline_reconstruction.cpp.o:(.rodata._ZTVN5boost15program_options11typed_valueIdcEE[_ZTVN5boost15program_options11typed_valueIdcEE]+0x38): undefined reference toboost::program_options::value_semantic_codecvt_helper::parse(boost::any&, std::vector<std::string, std::allocator > const&, bool) const' collect2: error: ld returned 1 exit status CMakeFiles/offline_reconstruction.dir/build.make:123: recipe for target 'offline_reconstruction' failed make[2]: [offline_reconstruction] Error 1 CMakeFiles/Makefile2:110: recipe for target 'CMakeFiles/offline_reconstruction.dir/all' failed make[1]: [CMakeFiles/offline_reconstruction.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... /usr/local/lib/libopencv_imgcodecs.so.3.4.11: undefined reference to TIFFReadDirectory@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.3.4.11: undefined reference toTIFFWriteEncodedStrip@LIBTIFF_4.0' /usr/local/lib/libopencv_imgcodecs.so.3.4.11: undefined reference to TIFFIsTiled@LIBTIFF_4.0' /usr/local/lib/libopencv

reini1305 commented 3 years ago

This looks like you might need to install the boost program_options package (apt install libboost-program-options-dev), and the last 3 errors seems to be related to your OpenCV installation

satabios commented 3 years ago

libboost packages are upto date and I've installed Opencv 3.4.11. Do I need to set the path for boost package?

reini1305 commented 3 years ago

Hm, that is weird. You could nuke the CMakeCache.txt and perform a new CMake run. It should print something like "Boost found: version xx.x".

vigneshkgith commented 3 years ago

Thanks @reini1305 and @satabios .. I was able to install imageutilities . This helped wonderfully,

If you only want to build imageutilities for dvs-reconstruction, you can switch off ndarray completely (IU_USE_NDARRAY to OFF with ccmake). You want to keep CUDA enabled though.