-
Notifications
You must be signed in to change notification settings - Fork 760
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
librtabmap_gui.so links to wrong library on make install #71
Comments
Did you try to clear the build directory of rtabmap before rebuilding it with Qt5? You can also $ cd rtabmap/build
$ make VERBOSE=TRUE Then look for libraries linked by rtabmap_gui: ...
Linking CXX shared library ../../../bin/librtabmap_gui.so
cd /home/mathieu/workspace/rtabmap/build/guilib/src && /usr/bin/cmake -E cmake_link_script CMakeFiles/rtabmap_gui.dir/link.txt --verbose=TRUE
/usr/bin/c++ -fPIC -fmessage-length=0 -Wno-deprecated -O3 -DNDEBUG -shared -Wl,-soname,librtabmap_gui.so.0.10 -o ../../../bin/librtabmap_gui.so.0.10.10 CMakeFiles/rtabmap_gui.dir/MainWindow.cpp.o CMakeFiles/rtabmap_gui.dir/PreferencesDialog.cpp.o CMakeFiles/rtabmap_gui.dir/KeypointItem.cpp.o CMakeFiles/rtabmap_gui.dir/ImageView.cpp.o CMakeFiles/rtabmap_gui.dir/PdfPlot.cpp.o CMakeFiles/rtabmap_gui.dir/StatsToolBox.cpp.o CMakeFiles/rtabmap_gui.dir/ProgressDialog.cpp.o CMakeFiles/rtabmap_gui.dir/AboutDialog.cpp.o CMakeFiles/rtabmap_gui.dir/ConsoleWidget.cpp.o CMakeFiles/rtabmap_gui.dir/DatabaseViewer.cpp.o CMakeFiles/rtabmap_gui.dir/utilite/UPlot.cpp.o CMakeFiles/rtabmap_gui.dir/CloudViewer.cpp.o CMakeFiles/rtabmap_gui.dir/OdometryViewer.cpp.o CMakeFiles/rtabmap_gui.dir/LoopClosureViewer.cpp.o CMakeFiles/rtabmap_gui.dir/DataRecorder.cpp.o CMakeFiles/rtabmap_gui.dir/CameraViewer.cpp.o CMakeFiles/rtabmap_gui.dir/CalibrationDialog.cpp.o CMakeFiles/rtabmap_gui.dir/ExportDialog.cpp.o CMakeFiles/rtabmap_gui.dir/PostProcessingDialog.cpp.o CMakeFiles/rtabmap_gui.dir/ExportCloudsDialog.cpp.o CMakeFiles/rtabmap_gui.dir/MapVisibilityWidget.cpp.o CMakeFiles/rtabmap_gui.dir/GraphViewer.cpp.o CMakeFiles/rtabmap_gui.dir/CreateSimpleCalibrationDialog.cpp.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_MainWindow.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_PreferencesDialog.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_DatabaseViewer.cxx.o CMakeFiles/rtabmap_gui.dir/moc_AboutDialog.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_ConsoleWidget.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_ImageView.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_PdfPlot.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_StatsToolBox.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_ProgressDialog.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/utilite/moc_UPlot.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/utilite/moc_UImageView.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_CloudViewer.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_OdometryViewer.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_LoopClosureViewer.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_DataRecorder.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_CameraViewer.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_CalibrationDialog.cxx.o CMakeFiles/rtabmap_gui.dir/moc_ExportDialog.cxx.o CMakeFiles/rtabmap_gui.dir/moc_PostProcessingDialog.cxx.o CMakeFiles/rtabmap_gui.dir/moc_ExportCloudsDialog.cxx.o CMakeFiles/rtabmap_gui.dir/moc_MapVisibilityWidget.cxx.o CMakeFiles/rtabmap_gui.dir/__/include/rtabmap/gui/moc_GraphViewer.cxx.o CMakeFiles/rtabmap_gui.dir/moc_CreateSimpleCalibrationDialog.cxx.o CMakeFiles/rtabmap_gui.dir/qrc_GuiLib.cxx.o ../../../bin/librtabmap_core.so.0.10.10 ../../../bin/librtabmap_utilite.so.0.10.10 -lQtSvg -lQtGui -lQtXml -lQtCore /usr/lib/x86_64-linux-gnu/libopencv_videostab.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ts.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_superres.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_stitching.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ocl.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_gpu.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_contrib.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.8 -lboost_system -lboost_filesystem -lboost_thread -lboost_date_time -lboost_iostreams -lboost_serialization -lpthread -lpcl_common -lpcl_octree -lOpenNI /usr/lib/libvtkCommon.so.5.8.0 /usr/lib/libvtkRendering.so.5.8.0 /usr/lib/libvtkHybrid.so.5.8.0 /usr/lib/libvtkCharts.so.5.8.0 -lpcl_io -Wl,-Bstatic -lflann_cpp_s -Wl,-Bdynamic -lpcl_kdtree -lpcl_search -lpcl_sample_consensus -lpcl_filters -lpcl_features -lpcl_keypoints -lpcl_segmentation -lpcl_visualization -lpcl_outofcore -lpcl_registration -lpcl_recognition -lqhull -lpcl_surface -lpcl_people -lpcl_tracking -lpcl_apps -lboost_system -lboost_filesystem -lboost_thread -lboost_date_time -lboost_iostreams -lboost_serialization -lpthread -lqhull -lOpenNI -Wl,-Bstatic -lflann_cpp_s -Wl,-Bdynamic /usr/lib/libvtkCommon.so.5.8.0 /usr/lib/libvtkRendering.so.5.8.0 /usr/lib/libvtkHybrid.so.5.8.0 /usr/lib/libvtkCharts.so.5.8.0 -lQVTK /usr/lib/x86_64-linux-gnu/libopencv_photo.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_legacy.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_video.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_objdetect.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_ml.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_calib3d.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_features2d.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_highgui.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_imgproc.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_flann.so.2.4.8 /usr/lib/x86_64-linux-gnu/libopencv_core.so.2.4.8 /usr/lib/libvtkViews.so.5.8.0 /usr/lib/libvtkInfovis.so.5.8.0 /usr/lib/libvtkWidgets.so.5.8.0 /usr/lib/libvtkHybrid.so.5.8.0 /usr/lib/libvtkParallel.so.5.8.0 /usr/lib/libvtkVolumeRendering.so.5.8.0 /usr/lib/libvtkRendering.so.5.8.0 /usr/lib/libvtkGraphics.so.5.8.0 /usr/lib/libvtkImaging.so.5.8.0 /usr/lib/libvtkIO.so.5.8.0 /usr/lib/libvtkFiltering.so.5.8.0 /usr/lib/libvtkCommon.so.5.8.0 -lm /usr/lib/libvtksys.so.5.8.0 -ldl -lz /opt/ros/indigo/lib/libfreenect.so /opt/ros/indigo/lib/libfreenect_sync.so -lOpenNI2 -ldc1394 /opt/ros/indigo/lib/libg2o_stuff.so /opt/ros/indigo/lib/libg2o_core.so /opt/ros/indigo/lib/libg2o_solver_cholmod.so /opt/ros/indigo/lib/libg2o_solver_csparse.so /opt/ros/indigo/lib/libg2o_csparse_extension.so /opt/ros/indigo/lib/libg2o_types_slam2d.so /opt/ros/indigo/lib/libg2o_types_slam3d.so -lcxsparse -lcholmod -lpcl_common -lpcl_octree -lpcl_io -lpcl_kdtree -lpcl_search -lpcl_sample_consensus -lpcl_filters -lpcl_features -lpcl_keypoints -lpcl_segmentation -lpcl_visualization -lpcl_outofcore -lpcl_registration -lpcl_recognition -lpcl_surface -lpcl_people -lpcl_tracking -lpcl_apps -lpthread -Wl,-rpath,/home/mathieu/workspace/rtabmap/bin:/opt/ros/indigo/lib
cd /home/mathieu/workspace/rtabmap/build/guilib/src && /usr/bin/cmake -E cmake_symlink_library ../../../bin/librtabmap_gui.so.0.10.10 ../../../bin/librtabmap_gui.so.0.10 ../../../bin/librtabmap_gui.so
make[2]: Leaving directory `/home/mathieu/workspace/rtabmap/build'
/usr/bin/cmake -E cmake_progress_report /home/mathieu/workspace/rtabmap/build/CMakeFiles 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
[ 86%] Built target rtabmap_gui
... Well above, rtabmap is linked to What I have with Qt4: $ ldd catkin_ws/devel/bin/rtabmap | grep Q
libQtGui.so.4 => /usr/lib/x86_64-linux-gnu/libQtGui.so.4 (0x00007f89ed00e000)
libQtCore.so.4 => /usr/lib/x86_64-linux-gnu/libQtCore.so.4 (0x00007f89ecb29000)
libQtSvg.so.4 => /usr/lib/x86_64-linux-gnu/libQtSvg.so.4 (0x00007f89e2ead000)
libQVTK.so.5.8 => /usr/lib/libQVTK.so.5.8 (0x00007f89e1d07000)
libQtSql.so.4 => /usr/lib/x86_64-linux-gnu/libQtSql.so.4 (0x00007f89d687b000)
libvtkQtChart.so.5.8 => /usr/lib/libvtkQtChart.so.5.8 (0x00007f89d6308000) $ ldd /usr/lib/libQVTK.so.5.8 | grep Qt
libQtGui.so.4 => /usr/lib/x86_64-linux-gnu/libQtGui.so.4 (0x00007f9e21aed000)
libQtSql.so.4 => /usr/lib/x86_64-linux-gnu/libQtSql.so.4 (0x00007f9e218ae000)
libQtCore.so.4 => /usr/lib/x86_64-linux-gnu/libQtCore.so.4 (0x00007f9e213c9000)
libvtkQtChart.so.5.8 => /usr/lib/libvtkQtChart.so.5.8 (0x00007f9e1f81e000) |
I cleaned the build directory and even tried with a fresh clone too, and when I called |
Hello,
I am trying to link rtabmap against Qt5 and I compiled VTK (6) and PCL with Qt5 as mentioned #6.
After I 'make install' to my workspace's devel folder, when I run rtabmap , I get a segfault.
$ valgrind ./path/to/rtabmap_ws/devel/bin/rtabmap -v
$ ldd ./path/to/rtabmap_ws/devel/bin | grep Qt
produces:So I tried the executable in the build path and it worked. So I tried
$ ldd ./path/to/rtabmap_ws/devel/bin | grep Qt
, which returned:So somehow libQtGui.4 gets linked to librtabmap_gui.so only on install.
I tried both master and indigo-devel branches. I tried modifying
CMakeLists.txt
files:For example,
I deleted the references to
Qt4
and changed:into:
Additionally, I changed instances of
Qt5_FOUND
toQT5Widgets_FOUND
accordingly, since I've modified the call to find_package script.As Qt 5.x CMake Guides say Qt5:: should be used instead of QT5_Libraries,
I put
(set QT_LIBRARIES Qt5::Widgets Qt5::Gui Qt5::Core Qt5::Svg)
into the main CMakeLists.txt, since this was the variable used in linking Qt libraries trough out the package.(Also, indigo-devel doesn't have an updated mappingRGBD.cpp since libfreenect2 made DepthPackageProcessor::Config implicit)
I will try to add build directory to
LD_LIBRARY_PATH
withoutmake install
as a workaround but I couldn't think of another (even temporary) solution.Here is my
$LD_LIBRARY_PATH
,$CMAKE_PREFIX_PATH
,$PKG_CONFIG_PATH
and also the cmake command I used:Best,
The text was updated successfully, but these errors were encountered: