编译PCL(Point Cloud Library)成Mingw链接库
📅 2026/7/11 15:32:45
👁️ 阅读次数
📝 编程学习
我的gcc版本是7.3.0,在window编译。
所以选择的是PCL1.12.1版本。
通过网盘分享的文件:PCL安装包集合
链接: https://pan.baidu.com/s/16lhqfdXyut2UgqmQ5a8Cjg?pwd=insr 提取码: insr
也可以到git上找相应的版本库。
Git 下载链接
依赖库 Git 仓库地址
Boost https://github.com/boostorg/boost
Eigen https://gitlab.com/libeigen/eigen
FLANN https://github.com/flann-lib/flann
Qhull https://github.com/qhull/qhull
VTK https://gitlab.kitware.com/vtk/vtk
PCL (源码) https://github.com/PointCloudLibrary/pcl
Boost 编译
双击 bootstrap.bat,生成b2.exe。
shift+鼠标右键 打开Powershell窗口
./b2.exe stage--toolset=gcc--with-filesystem--with-date_time--with-iostreams--with-system link=shared runtime-link=shared threading=multi variant=release address-model=64./b2.exe stage--toolset=gcc--with-regex link=shared runtime-link=shared threading=multi variant=releaseEigen 不用编译,到时候只需要引用路径就可以了。
FLANN 在文件夹中创建一个build文件夹。然后就是cmake-gui编译的。
完成后,在build文件夹中cmd弹出窗口。
make -j8
make install
Qhull 和 FLANN 编译过程一样
VTK 因为我在qt中计算使用,所以就没编译这个。
PCL
变量名 类型 值 BOOST_ROOT PATH E:/PCL/boost_1_78_0 Boost_NO_BOOST_CMAKE BOOL 勾选(ON) Boost_USE_STATIC_LIBS BOOL 取消勾选(OFF) 然后手动指定每个库文件(关键!): 点击 Add Entry,Type 选择 FILEPATH(重要!这样才能选择文件): 变量名 类型 值 Boost_FILESYSTEM_LIBRARY_RELEASE FILEPATH E:/PCL/boost_1_78_0/stage/lib/libboost_filesystem-mgw7-mt-x64-1_78.dll.a Boost_SYSTEM_LIBRARY_RELEASE FILEPATH E:/PCL/boost_1_78_0/stage/lib/libboost_system-mgw7-mt-x64-1_78.dll.a Boost_DATE_TIME_LIBRARY_RELEASE FILEPATH E:/PCL/boost_1_78_0/stage/lib/libboost_date_time-mgw7-mt-x64-1_78.dll.a Boost_IOSTREAMS_LIBRARY_RELEASE FILEPATH E:/PCL/boost_1_78_0/stage/lib/libboost_iostreams-mgw7-mt-x64-1_78.dll.a Boost_REGEX_LIBRARY_RELEASE FILEPATH E:/PCL/boost_1_78_0/stage/lib/libboost_regex-mgw7-mt-x64-1_78.dll.a换成自己的路径。这个需要在configure之前创建完成。再configure。
还有错误就是没找到依赖库,指定就可以的。
编程学习
技术分享
实战经验