introlab / rtabmap

RTAB-Map library and standalone application
https://introlab.github.io/rtabmap
Other
2.75k stars 785 forks source link

RTABMAP-0.13.0 Unresolved external symbol errors #218

Closed ahsteven closed 7 years ago

ahsteven commented 7 years ago

Hello Mathieu, I had built an ran the RGBD-Mapping example with RTAB-MAP 12.4. However, I needed to update to RTABMAP with Zed 20 and Cuda 8 support so I installed RTAB-MAP-0.13.0-win64-ZED20-CUDA80.exe. I was able to run an example with the GUI. However after regeneratingthe RGBD-Mapping example VS project with cmake I am getting some linking errors when I build the project. Below are the errors:

Severity Code Description Project File Line Suppression State Error LNK2019 unresolved external symbol "declspec(dllimport) public: cdecl rtabmap::CloudViewer::CloudViewer(class QWidget )" (_imp??0CloudViewer@rtabmap@@QEAA@PEAVQWidget@@@Z) referenced in function "public: __cdecl MapBuilder::MapBuilder(class rtabmap::CameraThread )" (??0MapBuilder@@QEAA@PEAVCameraThread@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: virtual cdecl rtabmap::CloudViewer::~CloudViewer(void)" (imp_??1CloudViewer@rtabmap@@UEAA@XZ) referenced in function "public: virtual void * cdecl rtabmap::CloudViewer::`scalar deleting destructor'(unsigned int)" (??_GCloudViewer@rtabmap@@UEAAPEAXI@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "
declspec(dllimport) public: bool cdecl rtabmap::CloudViewer::updateCloudPose(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class rtabmap::Transform const &)" (imp_?updateCloudPose@CloudViewer@rtabmap@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBVTransform@2@@Z) referenced in function "protected: virtual void __cdecl MapBuilder::processStatistics(class rtabmap::Statistics const &)" (?processStatistics@MapBuilder@@MEAAXAEBVStatistics@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "
declspec(dllimport) public: bool cdecl rtabmap::CloudViewer::addCloud(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class boost::shared_ptr<class pcl::PointCloud > const &,class rtabmap::Transform const &,class QColor const &)" (_imp?addCloud@CloudViewer@rtabmap@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$shared_ptr@V?$PointCloud@UPointXYZRGB@pcl@@@pcl@@@boost@@AEBVTransform@2@AEBVQColor@@@Z) referenced in function "protected: virtual void cdecl MapBuilder::processOdometry(class rtabmap::OdometryEvent const &)" (?processOdometry@MapBuilder@@MEAAXAEBVOdometryEvent@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: bool cdecl rtabmap::CloudViewer::addCloud(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class boost::shared_ptr<class pcl::PointCloud > const &,class rtabmap::Transform const &,class QColor const &)" (imp_?addCloud@CloudViewer@rtabmap@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$shared_ptr@V?$PointCloud@UPointXYZ@pcl@@@pcl@@@boost@@AEBVTransform@2@AEBVQColor@@@Z) referenced in function "protected: virtual void __cdecl MapBuilder::processStatistics(class rtabmap::Statistics const &)" (?processStatistics@MapBuilder@@MEAAXAEBVStatistics@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "
declspec(dllimport) public: void cdecl rtabmap::CloudViewer::updateCameraTargetPosition(class rtabmap::Transform const &)" (imp_?updateCameraTargetPosition@CloudViewer@rtabmap@@QEAAXAEBVTransform@2@@Z) referenced in function "protected: virtual void cdecl MapBuilder::processOdometry(class rtabmap::OdometryEvent const &)" (?processOdometry@MapBuilder@@MEAAXAEBVOdometryEvent@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: void cdecl rtabmap::CloudViewer::addOrUpdateGraph(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class boost::shared_ptr<class pcl::PointCloud > const &,class QColor const &)" (
imp_?addOrUpdateGraph@CloudViewer@rtabmap@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEBV?$shared_ptr@V?$PointCloud@UPointXYZ@pcl@@@pcl@@@boost@@AEBVQColor@@@Z) referenced in function "protected: virtual void cdecl MapBuilder::processStatistics(class rtabmap::Statistics const &)" (?processStatistics@MapBuilder@@MEAAXAEBVStatistics@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: void cdecl rtabmap::CloudViewer::removeAllGraphs(void)" (_imp?removeAllGraphs@CloudViewer@rtabmap@@QEAAXXZ) referenced in function "protected: virtual void
cdecl MapBuilder::processStatistics(class rtabmap::Statistics const &)" (?processStatistics@MapBuilder@@MEAAXAEBVStatistics@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: bool cdecl rtabmap::CloudViewer::removeCloud(class std::basic_string<char,struct std::char_traits,class std::allocator > const &)" (imp_?removeCloud@CloudViewer@rtabmap@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "protected: virtual void cdecl MapBuilder::processStatistics(class rtabmap::Statistics const &)" (?processStatistics@MapBuilder@@MEAAXAEBVStatistics@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: bool cdecl rtabmap::CloudViewer::getPose(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,class rtabmap::Transform &)" (imp_?getPose@CloudViewer@rtabmap@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@AEAVTransform@2@@Z) referenced in function "protected: virtual void cdecl MapBuilder::processStatistics(class rtabmap::Statistics const &)" (?processStatistics@MapBuilder@@MEAAXAEBVStatistics@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: class QColor const & cdecl rtabmap::CloudViewer::getDefaultBackgroundColor(void)const " (imp_?getDefaultBackgroundColor@CloudViewer@rtabmap@@QEBAAEBVQColor@@XZ) referenced in function "protected: virtual void __cdecl MapBuilder::processOdometry(class rtabmap::OdometryEvent const &)" (?processOdometry@MapBuilder@@MEAAXAEBVOdometryEvent@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "
declspec(dllimport) public: void cdecl rtabmap::CloudViewer::setBackgroundColor(class QColor const &)" (imp_?setBackgroundColor@CloudViewer@rtabmap@@QEAAXAEBVQColor@@@Z) referenced in function "protected: virtual void cdecl MapBuilder::processOdometry(class rtabmap::OdometryEvent const &)" (?processOdometry@MapBuilder@@MEAAXAEBVOdometryEvent@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "declspec(dllimport) public: void cdecl rtabmap::CloudViewer::setCloudVisibility(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,bool)" (imp_?setCloudVisibility@CloudViewer@rtabmap@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@_N@Z) referenced in function "protected: virtual void cdecl MapBuilder::processOdometry(class rtabmap::OdometryEvent const &)" (?processOdometry@MapBuilder@@MEAAXAEBVOdometryEvent@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2019 unresolved external symbol "
declspec(dllimport) public: void cdecl rtabmap::CloudViewer::setCloudPointSize(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,int)" (imp_?setCloudPointSize@CloudViewer@rtabmap@@QEAAXAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z) referenced in function "protected: virtual void cdecl MapBuilder::processStatistics(class rtabmap::Statistics const &)" (?processStatistics@MapBuilder@@MEAAXAEBVStatistics@rtabmap@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "public: virtual void __cdecl rtabmap::CloudViewer::clear(void)" (?clear@CloudViewer@rtabmap@@UEAAXXZ) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "protected: virtual void
cdecl rtabmap::CloudViewer::contextMenuEvent(class QContextMenuEvent )" (?contextMenuEvent@CloudViewer@rtabmap@@MEAAXPEAVQContextMenuEvent@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "protected: virtual void __cdecl rtabmap::CloudViewer::handleAction(class QAction
)" (?handleAction@CloudViewer@rtabmap@@MEAAXPEAVQAction@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "protected: virtual void cdecl rtabmap::CloudViewer::keyPressEvent(class QKeyEvent )" (?keyPressEvent@CloudViewer@rtabmap@@MEAAXPEAVQKeyEvent@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "protected: virtual void __cdecl rtabmap::CloudViewer::keyReleaseEvent(class QKeyEvent
)" (?keyReleaseEvent@CloudViewer@rtabmap@@MEAAXPEAVQKeyEvent@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "public: virtual struct QMetaObject const *
cdecl rtabmap::CloudViewer::metaObject(void)const " (?metaObject@CloudViewer@rtabmap@@UEBAPEBUQMetaObject@@XZ) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "protected: virtual void cdecl rtabmap::CloudViewer::mouseMoveEvent(class QMouseEvent )" (?mouseMoveEvent@CloudViewer@rtabmap@@MEAAXPEAVQMouseEvent@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "protected: virtual void __cdecl rtabmap::CloudViewer::mousePressEvent(class QMouseEvent
)" (?mousePressEvent@CloudViewer@rtabmap@@MEAAXPEAVQMouseEvent@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "public: virtual int
cdecl rtabmap::CloudViewer::qt_metacall(enum QMetaObject::Call,int,void )" (?qt_metacall@CloudViewer@rtabmap@@UEAAHW4Call@QMetaObject@@HPEAPEAX@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "public: virtual void __cdecl rtabmap::CloudViewer::qt_metacast(char const )" (?qt_metacast@CloudViewer@rtabmap@@UEAAPEAXPEBD@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK2001 unresolved external symbol "protected: virtual void __cdecl rtabmap::CloudViewer::wheelEvent(class QWheelEvent *)" (?wheelEvent@CloudViewer@rtabmap@@MEAAXPEAVQWheelEvent@@@Z) rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\main.obj 1
Error LNK1120 25 unresolved externals rgbd_mapping C:\Users\Adam\Documents\Visual Studio 2015\Projects\RTABMAP_RGBDMapping\build9_13\Release\rgbd_mapping.exe 1

matlabbe commented 7 years ago

This is a bug with the binary release, it has been fixed in this commit. Change installed RTABMapConfig.cmake file like the changes in the commit, or explicitly set this in your code:

# Instead of 
find_package(RTABMap 0.13 REQUIRED)
# set 
find_package(RTABMap 0.13 REQUIRED core gui)

cheers, Mathieu

ahsteven commented 7 years ago

Yes Mathieu, following your suggestions I was able to solve this issue. Thank you