Reputation: 61
I'm looking for the PCL libraries which I have to linke in a QT4 project.
Upvotes: 1
Views: 1525
Reputation: 61
i found the solution. The /QT/4.8.0/ folder with the QT files was missing.
for this one they also would like to implement the pcl in her own qt projekt.
This is my *.pro file with openCV and PCL includes/links:
#openCV
INCLUDEPATH += C:\\opencv2_4_0_VS_bin\\build\\include
LIBS += -LC:\\opencv2_4_0_VS_bin\\lib\\Debug\\ \
-lopencv_core240d \
-lopencv_highgui240d \
-lopencv_imgproc240d \
-lopencv_features2d240d \
-lopencv_calib3d240d \
-lopencv_contrib240d \
-lopencv_flann240d \
-lopencv_legacy240d \
-lopencv_ml240d \
-lopencv_objdetect240d \
-lopencv_ts240d \
#-lopencv_gpu240d \
-lopencv_video240d
# PCL
INCLUDEPATH += C:\\PCL_1_6_0\\include\\pcl-1.6
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\Boost\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\Eigen\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\FLANN\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\Qhull\\include
INCLUDEPATH += C:\\PCL_1_6_0\\3rdParty\\VTK\\include\\vtk-5.8
INCLUDEPATH += C:\\Program Files (x86)\\OpenNI\\Include
LIBS += -L"C:\Program Files (x86)\OpenNI\Lib\openNI.lib"
LIBS += -LC:\\PCL_1_6_0\\3rdParty\\Qhull\\Lib\\ \
-lqhullstatic
LIBS += -LC:\\PCL_1_6_0\\lib\\ \
-lpcl_apps_release \
-lpcl_common_release \
-lpcl_features_release \
-lpcl_filters_release \
-lpcl_io_release \
-lpcl_io_ply_release \
-lpcl_kdtree_release \
-lpcl_keypoints_release \
-lpcl_octree_release \
#-lpcl_range_image_border_extractor_release \
-lpcl_registration_release \
-lpcl_sample_consensus_release \
-lpcl_search_release \
-lpcl_segmentation_release \
-lpcl_surface_release \
-lpcl_tracking_release \
-lpcl_visualization_release
LIBS += -LC:\\PCL_1_6_0\\3rdParty\\VTK\\lib\\vtk-5.8\\ \
-lMapReduceMPI \
-lmpistubs \
-lQVTK \
-lvtkalglib \
-lvtkCharts \
-lvtkCommon \
-lvtkDICOMParser \
-lvtkexoIIc \
-lvtkexpat \
-lvtkFiltering \
-lvtkfreetype \
-lvtkftgl \
-lvtkGenericFiltering \
-lvtkGeovis \
-lvtkGraphics \
-lvtkhdf5 \
-lvtkHybrid \
-lvtkImaging \
-lvtkInfovis \
-lvtkIO \
-lvtkjpeg \
-lvtklibxml2 \
-lvtkmetaio \
-lvtkNetCDF \
-lvtkNetCDF_cxx \
-lvtkpng \
-lvtkproj4 \
-lvtkRendering \
-lvtksqlite \
-lvtksys \
-lvtktiff \
-lvtkverdict \
-lvtkViews \
-lvtkVolumeRendering \
-lvtkWidgets \
-lvtkzlib
LIBS += -LC:\\PCL_1_6_0\\3rdParty\\FLANN\\lib\\ \
-lflann_cpp_s
LIBS += -LC:\\PCL_1_6_0\\3rdParty\\Boost\\lib\\ \
-llibboost_date_time-vc100-mt-1_49 \
-llibboost_thread-vc100-mt-1_49 \
-llibboost_filesystem-vc100-mt-1_49 \
-llibboost_system-vc100-mt-1_49 \
-llibboost_iostreams-vc100-mt-1_49
Unfortunately I have a other Link issue :-(
When I try to use the visualizer (pcl::visualization::PCLVisualizer) it gives me some errors like this:
vtkCommon.lib(vtkDebugLeaks.obj):-1: Fehler:LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__imp__MessageBoxA@16" in Funktion ""protected: static int __cdecl vtkDebugLeaks::DisplayMessageBox(char const *)" (?DisplayMessageBox@vtkDebugLeaks@@KAHPBD@Z)".
(sorry it's in german but you can see the error LNK2019 and the missing file)
It seems to be a external linking error whis the vktCommon.lib. This library is missing a vtkWin32outputWindow.obj file. Also is the SystemTools.obj file missing.
I could find a solution.
The pcl::visualization::CloudViewer works fine.
btw. Im looking for a solution how can I color a point cloud area (defined by a pcl::PointIndices). I would like to color the ground floor which is detected from the segmentation.
Upvotes: 2
Reputation: 708
Which operating system are you working on?
If you right click on your project file, it shows an option - Add library->External Library. In this window, select your library file and include file locations. It will generate include statement in your .pro file.
Make sure you use libraries compiled from the same compiler which you are using to compile your current project. For e.g. - On windows, if you are using Win32-VC10 binaries for PCL, then make sure, you are using VC10 compiler to compile qt project as well.
Upvotes: 0