• PCL1.12.1 with QT6.3.2 编译部署


    (1)安装 VS2019

     

    本文选择 VS2019 作为 QT 的 C/C++ 编译器,因此,需要先安装 VS2019 。安装 VS2019 时,注意要勾选 C++ 本地开发模块。

    (2)安装 QT6.3.2

    首先,到 www.qt.io ,注册/登录一个账户,下载 QT 在线安装包到本机电脑;

    双击运行 QT 在线安装包,保证网络在线,输入在 www.qt.io 上注册的账号和密码,点击下一步,

    这时会显示登录成功,并让您勾选同意条款,点击下一步,

    这时会显示可以安装的QT软件:

    Design Tools

    Qt 6.3 for desktop development

    Qt 6.3 for Android Automotive

    Qt 6.3 for mobile development

    Qt 6.3 for embedded development

    勾选 Design Tools 和 Qt 6.3 for desktop development ,安装目录选择 C:\Qt ,点击下一步,

    这时会显示组件选择窗口,记得勾选 QT 6.3.2 和 MSVC 2019 64-bit ,并且取消勾选 CMake 3.23 ,因为,稍候会独立安装 CMake 3.24:

     一直点下一步安装完毕。

    注意,由于其中的 VTK 库也是没有开启对 QT 的支持的,因此,我们除了需要自行编译 PLC1.12.1 外,还需要自行编译 VTK 库。

    (3)配置 QT 的编译器和调试器

    打开刚安装的 QT Creator 8 ,点击菜单《编辑》->《Preferences...》,在弹出的《首选项》窗口中,点选左边的《Kits》栏目: 

     点击 Kits 列表里面的 Desktop Qt MSVC2019 64-bits,然后点击 “Make Default” 按钮,将 VS2019 的 C/C++ 编译器设置为默认。

    然后,点击 “确定” 按钮,即完成了编译器和调试器的配置。

    (4)安装 CMake 3.24

    首先,到 https://cmake.org/download/ 下载 CMake 3.24 的二进制安装程序 cmake-3.24.1-windows-x86_64.msi ,下载到本机电脑后,双击运行安装程序,一直点击下一步,直到安装完毕。

    (5)安装 PLC1.12.1 二进制安装包

    由于 PLC1.12.1 的二进制安装包默认没有开启对 QT 的支持,因此,我们需要自行编译 PLC1.12.1 。但是,为了避免安装 PLC1.12.1 所依赖的其它几个库,我们需要先把 PLC1.12.1 的二进制安装包安装一遍。

    首先,到 https://github.com/PointCloudLibrary/pcl/releases 下载 PCL-1.12.1-AllInOne-msvc2019-win64.exe 安装程序到本机电脑;

    然后,双击运行 PCL-1.12.1-AllInOne-msvc2019-win64.exe ,将PCL安装(除了输入安装目录,其它步骤都是默认下一步)到 C:\PCL1.12.1-pre-release;

    安装完成后,可以看到 PLC1.12.1 所依赖的其他库位于 C:\PCL1.12.1-pre-release\3rdParty 目录下:

    (6)编译安装 vtk-v9.1.0 库

    因为 VTK 默认是没有开启 QT 的,因此,需要自行编译 VTK 库。

    首先,到 https://gitlab.kitware.com/vtk/vtk/-/tags下载 vtk-v9.1.0.zip 安装程序文件到本地电脑。

    然后,将 vtk-v9.1.0.zip 移动到 C:\ 目录下,将 vtk-v9.1.0.zip 解压到当前目录,得到 C:\vtk-v9.1.0 文件夹,将其改名为 C:\vtk-v9.1.0.source ,并且,创建一个新目录 C:\vtk-v9.1.0.source-bin 。

    打开之前安装的 CMake-gui 软件:

    点击 “Browse Source...” 按钮,然后,在弹出的选择目录对话框中,选择 C:\vtk-v9.1.0.source 目录。

    再点击 “Browse Build...” 按钮,在弹出的选择目录对话框中,选择 C:\vtk-v9.1.0.source-bin 目录。

    然后,点击 “Configure” 按钮,弹出对话框如下:

    在对话框中,选择 Visual Studio 16 2019 和 x64 ,然后,点击 “Finish” 按钮。

    Confige 完成后,列表显示 VTK_GROUP_ENABLE_Qt 选项为 DEFAULT ,其默认状态为不使能QT,因此,需要将该选项置为 “YES“ ,然后,再次点击 “Configure” 按钮:

    这时,还是提示错误,需要设置 VTK_QT_VERSION 和 Qt6_DIR 的目录:

     继续点击 "Configue" 按钮,继续出现错误,将相应红色项设置如图:

    继续点击 "Configue" 按钮,继续出现错误,将相应红色项设置如图:

     继续点击 "Configue" 按钮,继续出现错误,将相应红色项设置如图:

    继续点击 "Configue" 按钮,至此,出现 Configure Done ,则表示执行完毕,有红色的提示不用管。

    找到 CMAKE_INSTALL_PREFIX 项,设置为 C:/vtk-v9.0.1.dist ,这个是设置 VTK 编译成功后的安装目录:

    然后,点击 “Generate” 按钮,生成 VS2019 的项目文件。

    进入目录 C:\vtk-v9.1.0.source-bin ,使用 VS2019 打开 VTK 的项目文件 VTK.sln 。

    分别编译 Debug x64 版本,然后,重新生成 INSTALL 项目,

    编译 Release x64 版本,然后,重新生成 INSTALL 项目,

    至此,编译完毕的 vtk-v9.0.1 的库被拷贝到了 C:/vtk-v9.0.1.dist 目录,如下:

    然后,将该目录下的所有文件和文件夹,全部拷贝到 C:\PCL 1.12.1-pre-release\3rdParty\VTK 目录下,覆盖原来的 VTK 库。

    (7)编译安装 PLC1.12.1 点云库

    首先,到 https://github.com/PointCloudLibrary/pcl/releases 下载 PLC1.12.1 点云库源代码 source.zip 文件到本机电脑。

    然后,将 source.zip 移动到 C:\ 目录下,将 source.zip 解压到当前目录,得到 C:\pcl 文件夹,将其改名为 C:\PCL1.12.1.source ,并且,创建一个新目录 C:\PCL1.12.1.source-bin 。

    打开之前安装的 CMake-gui 软件:

    点击 “Browse Source...” 按钮,然后,在弹出的选择目录对话框中,选择 C:\PCL1.12.1.source 目录。

    再点击 “Browse Build...” 按钮,在弹出的选择目录对话框中,选择 C:\PCL1.12.1.source-bin 目录。

    然后,点击 “Configure” 按钮,弹出对话框如下:

    在对话框中,选择 Visual Studio 16 2019 和 x64 ,然后,点击 “Finish” 按钮。

    此时,会出现错误,提示 EIGEN_INCLUDE_DIR 没有配置,这时,需要点击 “Add Entry” 按钮,弹出 Add Cache Entry 对话框:

    在 Name 输入框输入 EIGEN_INLCUDE_DIR ,然后,在 Type 选择框选择 PATH 选项,点 “OK” 按钮。

    这时,Config 列表中出现了 EIGEN_INLCUDE_DIR 项,选择目录 C:\PCL 1.12.1-pre-release\3rdParty\Eigen\eigen3 即可:

    再次点击 “Configure” 按钮,这时会提示 FLANN 没有配置项,选择相关目录即可:

    再次点击 “Configure” 按钮,这时会提示有错误,更改以下一些配置项即可:

    取消 WITH_CUDA

    取消 WITH_PCAP

    WITH_QT 选项选择 QT6

    继续点击 "Configue" 按钮,继续出现错误,设置:

    Qt6_DIR C:/Qt/6.3.2/msvc2019_64/lib/cmake/Qt6

    VTK_DIR C:/vtk-v9.0.1.dist/lib/cmake/vtk-9.1

    继续点击 "Configue" 按钮,跟之前编译 VTK 一样,继续出现 Qt6 相关的错误信息,依次配置如下:

    Qt6CoreTools_DIR C:/Qt/6.3.2/msvc2019_64/lib/cmake/Qt6CoreTools

    Qt6WidgetsTools_DIR C:/Qt/6.3.2/msvc2019_64/lib/cmake/Qt6WidgetsTools

    Qt6GuiTools_DIR C:/Qt/6.3.2/msvc2019_64/lib/cmake/Qt6GuiTools

    Qt6QmlTools_DIR C:/Qt/6.3.2/msvc2019_64/lib/cmake/Qt6QmlTools

    勾选 “Advanced” 复选框,设置 Boost 库相关项(值如下列表)如上图:

    • Boost_DATE_TIME_LIBRARY_DEBUG:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_date_time-vc142-mt-gd-x64-1_78.lib
    • Boost_DATE_TIME_LIBRARY_RELEASE:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_date_time-vc142-mt-x64-1_78.lib
    • Boost_FILESYSTEM_LIBRARY_DEBUG:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_filesystem-vc142-mt-gd-x64-1_78.lib
    • Boost_FILESYSTEM_LIBRARY_RELEASE:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_filesystem-vc142-mt-x64-1_78.lib
    • Boost_INCLUDE_DIR:C:/PCL 1.12.1-pre-release/3rdParty/Boost/linclude/boost-1_78
    • Boost_IOSTREAMS_LIBRARY_DEBUG:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_iostreams-vc142-mt-gd-x64-1_78.lib
    • Boost_IOSTREAMS_LIBRARY_RELEASE:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_iostreams-vc142-mt-x64-1_78.lib
    • Boost_SYSTEM_LIBRARY_DEBUG:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_system-vc142-mt-gd-x64-1_78.lib
    • Boost_SYSTEM_LIBRARY_RELEASE:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_system-vc142-mt-x64-1_78.lib
    • Boost_LIBRARY_DEBUG:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib
    • Boost_LIBRARY_RELEASE:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib
    • Boost_MPI_LIBRARY_DEBUG:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_mpi-vc142-mt-gd-x64-1_78.lib
    • Boost_MPI_LIBRARY_RELEASE:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_mpi-vc142-mt-x64-1_78.lib
    • Boost_SERIALIZATION_LIBRARY_DEBUG:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_serialization-vc142-mt-gd-x64-1_78.lib
    • Boost_SERIALIZATION_LIBRARY_RELEASE:C:/PCL 1.12.1-pre-release/3rdParty/Boost/lib/libboost_serialization-vc142-mt-x64-1_78.lib

    继续点击 "Configue" 按钮,至此,出现 Configure Done ,则表示执行完毕。

    找到 CMAKE_INSTALL_PREFIX 项,设置为 C:/PCL1.12.1.dist,这个是设置 PCL 编译成功后的安装目录:

    然后,点击 “Generate” 按钮,生成 VS2019 的项目文件。

    进入目录 C:/PCL1.12.1.source-bin ,使用 VS2019 打开 PCL 的项目文件 PCL.sln 。

    分别编译 Debug x64 版本,然后,重新生成 INSTALL 项目,

    编译 Release x64 版本,然后,重新生成 INSTALL 项目,

    至此,编译完毕的 PCL1.12.1 的库被拷贝到了 C:/PCL1.12.1.dist 目录,

    接着,手动将目录 C:/PCL 1.12.1-pre-release/3rdParty,拷贝到 C:/PCL1.12.1.dist 目录下,

    至此,PCL1.12.1 库编译完毕,如下:

  • 相关阅读:
    关于聚合函数的课后作业
    Worthington肽合成应用丨胰凝乳蛋白酶方案
    2022年湖北工业大学招生简章之高起专、专升本非全日制学历提升
    【JavaSE】网络编程
    Dragonfly 基于 P2P 的文件和镜像分发系统
    音视频的Buffer处理
    C/C++中如何让程序接受并处理命令行参数
    基于vue springboot的前后端分离的化妆品商城
    【JAVAWEB开发】基于Java+Servlet+Ajax+jsp网上购物系统设计实现
    【力扣】面试经典150题——哈希表
  • 原文地址:https://blog.csdn.net/liuyangwuhan1980/article/details/126851930