make RTAB-Map standalone error

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

make RTAB-Map standalone error

Yuli
Dear Mathieu
I was trying to make  RTAB-Map standalone,
and
[ 80%] Linking CXX executable ../../../bin/rtabmap
/usr/bin/ld: warning: libnppc.so.9.1, needed by //usr/local/cuda-9.1/lib64/libnppial.so.9.1, not found (try using -rpath or -rpath-link)
//usr/local/cuda-9.1/lib64/libnppial.so.9.1: undefined reference to `nppGetStream@libnppc.so.9.1'
//usr/local/cuda-9.1/lib64/libnppif.so.9.1: undefined reference to `nppGetMaxThreadsPerSM@libnppc.so.9.1'
//usr/local/cuda-9.1/lib64/libnppist.so.9.1: undefined reference to `nppGetStreamMaxThreadsPerSM@libnppc.so.9.1'
/usr/local/zed/lib/libsl_core.so: undefined reference to `nppSetStream'
//usr/local/cuda-9.1/lib64/libnppial.so.9.1: undefined reference to `Event@libnppc.so.9.1'
//usr/local/cuda-9.1/lib64/libnppial.so.9.1: undefined reference to `nppGetGpuComputeCapability@libnppc.so.9.1'
//usr/local/cuda-9.1/lib64/libnppial.so.9.1: undefined reference to `Stream@libnppc.so.9.1'
//usr/local/cuda-9.1/lib64/libnppidei.so.9.1: undefined reference to `nppGetGpuNumSMs@libnppc.so.9.1'
//usr/local/cuda-9.1/lib64/libnppist.so.9.1: undefined reference to `nppGetStreamNumSMs@libnppc.so.9.1'
collect2: error: ld returned 1 exit status
app/src/CMakeFiles/rtabmap.dir/build.make:498: recipe for target '../bin/rtabmap' failed
make[2]: *** [../bin/rtabmap] Error 1
CMakeFiles/Makefile2:416: recipe for target 'app/src/CMakeFiles/rtabmap.dir/all' failed
make[1]: *** [app/src/CMakeFiles/rtabmap.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2



This is my Cmake :

-- The imported target "vtkRenderingPythonTkWidgets" references the file
   "/usr/lib/x86_64-linux-gnu/libvtkRenderingPythonTkWidgets.so"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-6.2/VTKTargets.cmake"
but not all the files it references.

-- The imported target "vtk" references the file
   "/usr/bin/vtk"
but this file does not exist.  Possible reasons include:
* The file was deleted, renamed, or moved to another location.
* An install or uninstall procedure did not complete successfully.
* The installation package was faulty and contained
   "/usr/lib/cmake/vtk-6.2/VTKTargets.cmake"
but not all the files it references.

CMake Warning at CMakeLists.txt:180 (MESSAGE):
  PCL definitions contain "-march=native", make sure all libraries using
  Eigen are also compiled with that flag to avoid some segmentation faults
  (with gdb referring to some Eigen functions).


-- Found OpenMP
-- Found OpenCV: /opt/ros/kinetic/include/opencv-3.3.1;/opt/ros/kinetic/include/opencv-3.3.1/opencv
-- Found PCL: /usr/local/include/pcl-1.8;/usr/local/include/eigen3;/usr/include;/usr/include/ni;/usr/include/vtk-6.2;/usr/include/libxml2;/usr/lib/openmpi/include/openmpi/opal/mca/event/libevent2021/libevent;/usr/lib/openmpi/include/openmpi/opal/mca/event/libevent2021/libevent/include;/usr/lib/openmpi/include;/usr/lib/openmpi/include/openmpi;/usr/include/hdf5/openmpi;/usr/include/freetype2;/usr/include/x86_64-linux-gnu/freetype2;/usr/include/x86_64-linux-gnu;/usr/include/jsoncpp;/usr/include/tcl;/usr/include/python2.7
-- Found ZLIB: /usr/include
-- Found Freenect: /usr/include
CMake Warning at cmake_modules/FindKinectSDK2.cmake:71 (message):
  Directory "" not found.
Call Stack (most recent call first):
  cmake_modules/FindKinectSDK2.cmake:119 (check_dir)
  CMakeLists.txt:277 (FIND_PACKAGE)


-- KinectSDK2_FOUND : FALSE
-- Found DC1394: /usr/include/dc1394
-- Could NOT find CSPARSE (missing:  CSPARSE_INCLUDE_DIR CSPARSE_LIBRARY)
-- Found CUDA: /usr/local/cuda (found suitable exact version "9.1")
-- Found ZED sdk: /usr/local/zed/include
-- Found CUDA: /usr/local/cuda (found version "9.1")
-- Found CUDA: /usr/local/cuda/include
-- Found octomap 1.8.1: /opt/ros/kinetic/include
-- Found Pthreads
-- --------------------------------------------
-- Info :
--   Version : 0.17.0
--   CMAKE_INSTALL_PREFIX = /usr/local
--   CMAKE_BUILD_TYPE =     Release
--   CMAKE_INSTALL_LIBDIR = lib
--   BUILD_APP =            ON
--   BUILD_TOOLS =          ON
--   BUILD_EXAMPLES =       ON
--   BUILD_SHARED_LIBS =    ON
--   CMAKE_CXX_FLAGS =  -fmessage-length=0  -fopenmp -std=c++11
--   PCL_DEFINITIONS =  -march=native -msse4.2 -mfpmath=sse ;-DDISABLE_OPENNI2;-DDISABLE_ENSENSO;-DDISABLE_DAVIDSDK;-DDISABLE_DSSDK;-DDISABLE_PCAP;-DDISABLE_PNG;-DDISABLE_LIBUSB_1_0;-DFLANN_STATIC;-Dqh_QHpointer;-DDISABLE_RSSDK
--   With OpenCV 3 xfeatures2d module (SIFT/SURF/BRIEF/FREAK) = YES (License: Non commercial)
--   With Freenect             = YES (License: Apache v2 and/or GPLv2)
--   With OpenNI2              = NO (OpenNI2 not found)
--   With Freenect2            = NO (libfreenect2 not found)
--   With Kinect for Windows 2 = NO (Kinect for Windows 2 SDK not found)
--   With dc1394               = YES (License: LGPL)
--   With FlyCapture2/Triclops = NO (Point Grey SDK not found)
--   With TORO                 = YES (License: Creative Commons [Attribution-NonCommercial-ShareAlike])
--   With g2o                  = NO (g2o not found)
--   With GTSAM                = NO (GTSAM not found)
--   With VERTIGO              = NO (GTSAM or g2o required)
--   With cvsba                = NO (cvsba not found)
--   With libpointmatcher      = NO (libpointmatcher not found)
--   With ZED                  = YES (With CUDA)
--   With RealSense            = NO (librealsense not found)
--   With OCTOMAP              = YES (License: BSD)
--   With CPUTSDF              = NO (CPUTSDF not found)
--   With OpenChisel           = NO (open_chisel not found)
--   With libfovis             = NO (libfovis not found)
--   With libviso2             = NO (libviso2 not found)
--   With dvo_core             = NO (dvo_core not found)
--   With okvis                = NO (okvis not found)
--   With ORB_SLAM2            = NO (ORB_SLAM2 not found, make sure environment variable ORB_SLAM2_ROOT_DIR is set)
--   With Qt5                  = YES (License: Open Source or Commercial)
-- --------------------------------------------
-- Configuring done
-- Generating done

I wonder if you can help me with this?
Thank you!



Reply | Threaded
Open this post in threaded view
|

Re: make RTAB-Map standalone error

matlabbe
Administrator
Hi,

Do you have ZED SDK compatible with CUDA 9.1?

Otherwise, if you don't need ZED, you can build without it so that CUDA is not linked:
$ cd rtabmap/build
$ cmake -DWITH_ZED=OFF ..

cheers,
Mathieu
Reply | Threaded
Open this post in threaded view
|

Re: make RTAB-Map standalone error

Yuli
This post was updated on .
Yes, I do and I could run zed_ros_wrapper on my computer successfully.
I want to run RTABMAP with live video from ZED cause using ORB-SLAM didn't
work well.
I will keep trying.
Thank you sir!

Reply | Threaded
Open this post in threaded view
|

Re: make RTAB-Map standalone error

matlabbe
Administrator
Maybe there is a CUDA library missing for the linking (one with the undefined functions you listed), however here, all CUDA libraries should be added to linker.
Reply | Threaded
Open this post in threaded view
|

Re: make RTAB-Map standalone error

Yuli
problem's solved after I did
export LD_LIBRARY_PATH=/usr/local/cuda/lib64/:$LD_LIBRARY_PATH
thank you sir!