转自:http://www.zhangzscn.com/2015/11/05/qt%E9%85%8D%E7%BD%AEpcl/
在Qt里配置PCL主要是把include,lib这些写到pro文件里,和在vs里配置有点像。不过有几点需要注意的地方,首先安装时路径里不要有空格,其次每次更改pro文件后都要执行qmake,不然更改不会生效,最后就是版本要对应,qt要使用msvc编译器版本的,PCL的是几位的qt也要安装对应位数的,比如都是32位的,那都要装32位的,不然会报link2019错误,最后记得在path里添加各种bin路径,参照VS配置PCL的添加方法。下面是qt里pro文件的配置。有个比较简单的配置方法,把下面的pro文件从INCLUDEPATH开始,复制到你新建的控制台项目中,然后使用替换功能,把路径替换一下,就不用一个一个去改路径了。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 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 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 | QT += core TARGET = Console CONFIG += console CONFIG -= app_bundle TEMPLATE = app SOURCES += main.cpp INCLUDEPATH += F:PCLincludepcl-1.7pcl INCLUDEPATH += F:PCLincludepcl-1.7 INCLUDEPATH += F:PCL3rdPartyBoostincludeboost-1_57 INCLUDEPATH += F:PCL3rdPartyEigeneigen3 INCLUDEPATH += F:PCL3rdPartyFLANNinclude INCLUDEPATH += F:PCL3rdPartyFLANNincludeflann INCLUDEPATH += F:PCL3rdPartyQhullinclude INCLUDEPATH += F:PCL3rdPartyVTKincludevtk-6.2 CONFIG(debug,debug|release){ LIBS += F:PCLlibpcl_common_debug.lib F:PCLlibpcl_features_debug.lib F:PCLlibpcl_filters_debug.lib F:PCLlibpcl_io_debug.lib F:PCLlibpcl_io_ply_debug.lib F:PCLlibpcl_kdtree_debug.lib F:PCLlibpcl_keypoints_debug.lib F:PCLlibpcl_octree_debug.lib F:PCLlibpcl_outofcore_debug.lib F:PCLlibpcl_people_debug.lib F:PCLlibpcl_recognition_debug.lib F:PCLlibpcl_registration_debug.lib F:PCLlibpcl_sample_consensus_debug.lib F:PCLlibpcl_search_debug.lib F:PCLlibpcl_segmentation_debug.lib F:PCLlibpcl_surface_debug.lib F:PCLlibpcl_tracking_debug.lib F:PCLlibpcl_visualization_debug.lib F:PCL3rdPartyBoostliblibboost_atomic-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_chrono-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_container-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_context-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_coroutine-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_date_time-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_exception-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_filesystem-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_graph-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_iostreams-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_locale-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_log-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_log_setup-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_math_c99-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_math_c99f-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_math_c99l-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_math_tr1-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_math_tr1f-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_math_tr1l-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_mpi-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_prg_exec_monitor-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_program_options-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_random-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_regex-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_serialization-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_signals-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_system-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_test_exec_monitor-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_thread-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_timer-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_unit_test_framework-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_wave-vc120-mt-gd-1_57.lib F:PCL3rdPartyBoostliblibboost_wserialization-vc120-mt-gd-1_57.lib F:PCL3rdPartyFLANNlibflann_cpp_s-gd.lib F:PCL3rdPartyQhulllibqhullstatic_d.lib F:PCL3rdPartyVTKlibvtkalglib-6.2-gd.lib F:PCL3rdPartyVTKlibvtkChartsCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonColor-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonComputationalGeometry-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonDataModel-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonExecutionModel-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonMath-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonMisc-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonSystem-6.2-gd.lib F:PCL3rdPartyVTKlibvtkCommonTransforms-6.2-gd.lib F:PCL3rdPartyVTKlibvtkDICOMParser-6.2-gd.lib F:PCL3rdPartyVTKlibvtkDomainsChemistry-6.2-gd.lib F:PCL3rdPartyVTKlibvtkexoIIc-6.2-gd.lib F:PCL3rdPartyVTKlibvtkexpat-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersAMR-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersExtraction-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersFlowPaths-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersGeneral-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersGeneric-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersGeometry-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersHybrid-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersHyperTree-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersImaging-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersModeling-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersParallel-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersParallelImaging-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersProgrammable-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersSelection-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersSMP-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersSources-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersStatistics-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersTexture-6.2-gd.lib F:PCL3rdPartyVTKlibvtkFiltersVerdict-6.2-gd.lib F:PCL3rdPartyVTKlibvtkfreetype-6.2-gd.lib F:PCL3rdPartyVTKlibvtkftgl-6.2-gd.lib F:PCL3rdPartyVTKlibvtkGeovisCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkgl2ps-6.2-gd.lib F:PCL3rdPartyVTKlibvtkhdf5-6.2-gd.lib F:PCL3rdPartyVTKlibvtkhdf5_hl-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingColor-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingFourier-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingGeneral-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingHybrid-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingMath-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingMorphological-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingSources-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingStatistics-6.2-gd.lib F:PCL3rdPartyVTKlibvtkImagingStencil-6.2-gd.lib F:PCL3rdPartyVTKlibvtkInfovisCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkInfovisLayout-6.2-gd.lib F:PCL3rdPartyVTKlibvtkInteractionImage-6.2-gd.lib F:PCL3rdPartyVTKlibvtkInteractionStyle-6.2-gd.lib F:PCL3rdPartyVTKlibvtkInteractionWidgets-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOAMR-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOEnSight-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOExodus-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOExport-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOGeometry-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOImage-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOImport-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOInfovis-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOLegacy-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOLSDyna-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOMINC-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOMovie-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIONetCDF-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOParallel-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOParallelXML-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOPLY-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOSQL-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOVideo-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOXML-6.2-gd.lib F:PCL3rdPartyVTKlibvtkIOXMLParser-6.2-gd.lib F:PCL3rdPartyVTKlibvtkjpeg-6.2-gd.lib F:PCL3rdPartyVTKlibvtkjsoncpp-6.2-gd.lib F:PCL3rdPartyVTKlibvtklibxml2-6.2-gd.lib F:PCL3rdPartyVTKlibvtkmetaio-6.2-gd.lib F:PCL3rdPartyVTKlibvtkNetCDF-6.2-gd.lib F:PCL3rdPartyVTKlibvtkNetCDF_cxx-6.2-gd.lib F:PCL3rdPartyVTKlibvtkoggtheora-6.2-gd.lib F:PCL3rdPartyVTKlibvtkParallelCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkpng-6.2-gd.lib F:PCL3rdPartyVTKlibvtkproj4-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingAnnotation-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingContext2D-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingContextOpenGL-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingFreeType-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingFreeTypeOpenGL-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingGL2PS-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingImage-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingLabel-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingLIC-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingLOD-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingOpenGL-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingVolume-6.2-gd.lib F:PCL3rdPartyVTKlibvtkRenderingVolumeOpenGL-6.2-gd.lib F:PCL3rdPartyVTKlibvtksqlite-6.2-gd.lib F:PCL3rdPartyVTKlibvtksys-6.2-gd.lib F:PCL3rdPartyVTKlibvtktiff-6.2-gd.lib F:PCL3rdPartyVTKlibvtkverdict-6.2-gd.lib F:PCL3rdPartyVTKlibvtkViewsContext2D-6.2-gd.lib F:PCL3rdPartyVTKlibvtkViewsCore-6.2-gd.lib F:PCL3rdPartyVTKlibvtkViewsInfovis-6.2-gd.lib F:PCL3rdPartyVTKlibvtkzlib-6.2-gd.lib F:PCL3rdPartyFLANNlibflann_s-gd.lib F:PCL3rdPartyFLANNlibflann-gd.lib F:PCL3rdPartyQhulllibqhull_d.lib F:PCL3rdPartyQhulllibqhull_p_d.lib F:PCL3rdPartyQhulllibqhullcpp_d.lib F:PCL3rdPartyQhulllibqhullstatic_p_d.lib } else { } |
下面是测试代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | #include <QCoreApplication> #include <QDebug> #include <QString> #include <QSharedPointer> #include <QVector> #include <iostream> #include <pcl/io/pcd_io.h> #include <pcl/point_types.h> int main( int argc, char *argv[]) { QCoreApplication a(argc, argv); pcl::PointCloud<pcl::PointXYZ>::Ptr cloud ( new pcl::PointCloud<pcl::PointXYZ>); if (pcl::io::loadPCDFile<pcl::PointXYZ>( "D:\rabbit.pcd" , *cloud) == -1) //* load the file { PCL_ERROR ( "Couldn't read file test_pcd.pcd n" ); return (-1); } std::cout << "Loaded " << cloud->width * cloud->height << " data points from test_pcd.pcd with the following fields: " << std::endl; return a.exec(); } |
联系客服