ceccocats / tkDNN

Deep neural network library and toolkit to do high performace inference on NVIDIA jetson platforms
GNU General Public License v2.0
717 stars 209 forks source link

Cmake error #159

Closed lxyzler closed 2 years ago

lxyzler commented 3 years ago

CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: CUDA_nvinfer_LIBRARY

How to deal with the problem.

mive93 commented 3 years ago

Hi @lxyzler

check to have correctly installed all the required libraries. At the end, you should have something like this: https://github.com/ceccocats/tkDNN/issues/143#issuecomment-724269903. Then check all the other issues on cmake (there are plenty)

lxyzler commented 3 years ago

Thankyou,This problem has been solved. There are new problems image -- Found CUDNN: /usr/local/cuda/lib64/libcudnn.so -- Found CUDNN include: /usr/local/cuda/include -- Found NVINFER: /usr/local/cuda/lib64/libnvinfer.so -- Found NVINFER include: NVINFER_INCLUDE_DIR-NOTFOUND install dir:/usr/local -- Configuring done -- Generating done -- Build files have been written to: /opt/sherry/lane_decetion/tkDNN/build [ 1%] Linking CXX shared library libkernels.so [ 18%] Built target kernels [ 19%] Linking CXX shared library libtkDNN.so [ 45%] Built target tkDNN [ 46%] Linking CXX executable demo /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to vtable for std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::find(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator+=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::size() const@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::insert(unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::operator+=(char const*)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::assign(char const)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::__cxx11::basic_string<char, std::char_traits, std::allocator >::append(char const, unsigned long)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_erase(unsigned long, unsigned long)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_flann.so.3.4.3: undefined reference tostd::cxx11::basic_ostringstream<char, std::char_traits, std::allocator >::basic_ostringstream(std::_Ios_Openmode)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace_aux(unsigned long, unsigned long, unsigned long, char)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_objdetect.so.3.4.3: undefined reference tostd::thread::_State::~_State()@GLIBCXX_3.4.22' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::basic_istream<char, std::char_traits<char> >& std::operator>><char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::resize(unsigned long)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long) const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_stringstream<char, std::char_traits, std::allocator >::~basic_stringstream()@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_objdetect.so.3.4.3: undefined reference to std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)())@GLIBCXX_3.4.22' libtkDNN.so: undefined reference toYAML::detail::node_data::empty_scalar()' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::rfind(char, unsigned long) const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_append(char const*, unsigned long)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::data() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::reserve(unsigned long)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::begin() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::resize(unsigned long, char)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `vtable for std::cxx11::basic_stringstream<char, std::char_traits, std::allocator >@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to VTT for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::erase(unsigned long, unsigned long)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::find(char, unsigned long) const@GLIBCXX_3.4.21' libtkDNN.so: undefined reference to YAML::LoadFile(std::string const&)' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_stringstream<char, std::char_traits, std::allocator >::str() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::substr(unsigned long, unsigned long) const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >::~basic_istringstream()@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::find_last_not_of(char const, unsigned long) const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::__cxx11::basic_string<char, std::char_traits, std::allocator >::_M_mutate(unsigned long, unsigned long, char const, unsigned long)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_last_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::capacity() const@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator[](unsigned long)@GLIBCXX_3.4.21' libtkDNN.so: undefined reference toYAML::detail::node_data::set_scalar(std::string const&)' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::_M_replace(unsigned long, unsigned long, char const, unsigned long)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to `std::__cxx11::basic_string<char, std::char_traits, std::allocator >::operator=(char const)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::basic_ifstream<char, std::char_traits<char> >::basic_ifstream(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::_Ios_Openmode)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::find_first_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_ostringstream<char, std::char_traits, std::allocator >::~basic_ostringstream()@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(unsigned long, char)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tooperator delete[](void, unsigned long)@CXXABI_1.3.9' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::__cxx11::basic_stringbuf<char, std::char_traits, std::allocator >::_M_sync(char, unsigned long, unsigned long)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to vtable for std::__cxx11::basic_istringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::swap(std::cxx11::basic_string<char, std::char_traits, std::allocator >&)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::basic_istream<char, std::char_traits >& std::getline<char, std::char_traits, std::allocator >(std::basic_istream<char, std::char_traits >&, std::cxx11::basic_string<char, std::char_traits, std::allocator >&, char)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(unsigned long, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::operator=(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_stringbuf<char, std::char_traits<char>, std::allocator<char> >::str() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::find_first_not_of(char const, unsigned long, unsigned long) const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to VTT for std::__cxx11::basic_stringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::__throw_out_of_range_fmt(char const, ...)@GLIBCXX_3.4.20' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::basic_ostream<char, std::char_traits<char> >& std::operator<< <char, std::char_traits<char>, std::allocator<char> >(std::basic_ostream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::c_str() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_objdetect.so.3.4.3: undefined reference to typeinfo for std::thread::_State@GLIBCXX_3.4.22' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::basic_string(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::begin()@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::end() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_stringstream<char, std::char_traits, std::allocator >::basic_stringstream(std::_Ios_Openmode)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(char const*)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::compare(char const*) const@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::rbegin() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tovtable for std::cxx11::basic_ostringstream<char, std::char_traits, std::allocator >@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::_M_construct(unsigned long, char)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::clear()@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::empty() const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tocxa_throw_bad_array_new_length@CXXABI_1.3.8' //usr/local/lib64/libyaml-cpp.so: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::basic_string(std::cxx11::basic_string<char, std::char_traits, std::allocator >&&)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_imgcodecs.so.3.4.3: undefined reference to std::runtime_error::runtime_error(char const*)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::basic_string(char const*, std::allocator const&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::basic_string(unsigned long, char, std::allocator const&)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::append(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::cxx11::basic_string<char, std::char_traits, std::allocator >::push_back(char)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to `std::runtime_error::runtime_error(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to VTT for std::__cxx11::basic_ostringstream<char, std::char_traits<char>, std::allocator<char> >@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::cxx11::basic_stringstream<char, std::char_traits, std::allocator >::basic_stringstream(std::cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::_Ios_Openmode)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string()@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::__cxx11::basic_string<char, std::char_traits, std::allocator >::operator+=(char)@GLIBCXX_3.4.21' //usr/local/lib64/libyaml-cpp.so: undefined reference to `std::cxx11::basic_string<char, std::char_traits, std::allocator >::end()@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference tostd::__cxx11::basic_string<char, std::char_traits, std::allocator >::_M_create(unsigned long&, unsigned long)@GLIBCXX_3.4.21' /usr/local/opencv/lib64/libopencv_dnn.so.3.4.3: undefined reference to operator delete(void*, unsigned long)@CXXABI_1.3.9' //usr/local/lib64/libyaml-cpp.so: undefined reference tostd::__cxx11::basic_string<char, std::char_traits, std::allocator >::find_last_not_of(char, unsigned long) const@GLIBCXX_3.4.21' collect2: error: ld returned 1 exit status make[2]: [demo] Error 1 make[1]: [CMakeFiles/demo.dir/all] Error 2 make: *** [all] Error 2

mive93 commented 3 years ago

Now you have a problem with the other required libraries for this project, namely opencv and yamlcpp. Have you doubled check the readme, dependency section?

qrzeffort commented 3 years ago

When cmake.. I had a similar problem: CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: CUDA_cublas_device_LIBRARY (ADVANCED) linked by target "tkDNN" in directory /home/nvidia/tkDNN

The dependency: cudnn=7.3.1 opencv=3.3.1 cuda=10.0 I followed the steps in readme,

liberize commented 3 years ago

@qrzeffort follow https://gitlab.kitware.com/cmake/cmake/-/merge_requests/2298/diffs?commit_id=bdf1f361354e3e0ecd4fd5ede2f38d5384a0444a patch /usr/share/cmake-3.10/Modules/FindCUDA.cmake yourself

qrzeffort commented 3 years ago

@qrzeffort follow https://gitlab.kitware.com/cmake/cmake/-/merge_requests/2298/diffs?commit_id=bdf1f361354e3e0ecd4fd5ede2f38d5384a0444a patch /usr/share/cmake-3.10/Modules/FindCUDA.cmake yourself

Thank you very much!

PhuongNDVN commented 3 years ago

@lxyzler I get the same problem. Could you share how to fix the problem?

mive93 commented 3 years ago

Which version of cmake are you using? Minimum 3.15 is required.

mive93 commented 2 years ago

Closing for inactivity. Feel free to reopen.