LidarView工程搭建指南

前言

笔者做过一段时间的车载LiDAR开发,对LidarView开源项目进行过深度定制,摸索了一套LidarView软件的开发和调试方法

1 软件安装

1.1 安装准备

Windows10系统平台为例,依次下载以下工具软件,软件(VS、Qt、cdb)的版本很重要!以下版本经过验证是没有问题的

序号 工具 版本 备注
1 git --- 拉取开源仓库代码
2 cmake --- 代码工程管理工具
3 tortoiseGit --- 代码对比分析工具
4 VisualStudio 2017 win10开发环境配置
5 Qt5.12.9 5.12.9 Qt环境安装
6 cdb 2017 Windows调试器
7 tly --- vpn工具,加快拉取代码速度
8 Inno Setup Compiler --- windows平台exe打包工具

1.2 安装git

下载并安装最新版git

1.3 安装cmake

下载并安装最新版cmake

1.4 安装tortoiseGit

下载并安装最新版tortoiseGit

1.5 安装Visual Studio 2017

下载vs2017社区版在线安装包,可以在msdn上面下载,安装以下组件

1.6 安装Qt5.12.9

去官网下载qt-opensource-windows-x86-5.12.9.exe并安装

记得要把msvc2017勾选上

1.7 安装cdb

访问网站,下载winsdksetup

安装cdb是为了调试,这里通过winsdksetup的方式进行安装,选择第一个选项然后点击Next

选择Yes然后点击Next

同意(Accept)License Agreement

勾选Debugging Tools for Windows,点击Install

然后打开QtCreator Kits页面查看Debugger,发现QtCreator已经自动识别

1.8 安装tly

这个工具主要是为了加速,因为众所周知的原因,我们需要使用它,这里不详细介绍,当然你也可以使用其它加速工具

1.9 安装Inno Setup Compiler

安装这个软件的目的是打包软件,请参考我的另一篇文章进行安装和配置

2 Superbuild工程配置

官方的代码仓库在gitlab,推荐使用这个源,工程地址是:https://gitlab.kitware.com/LidarView/lidarview.git

用git拉取代码

shell 复制代码
git clone --recursive https://gitlab.kitware.com/LidarView/lidarview.git

用QtCreator打开工程SuperBuild工程cmake文件,配置build类型(Windows目前只能支持RelWithDebInfo和Release模式)

cmake 复制代码
set(CMAKE_BUILD_TYPE "RelWithDebInfo")
set(WITH_STATIC_LASZIP OFF)
set(SUPERBUILD_ALLOW_DEBUG ON)

配置build路径,这里配置为E:\debug

3 LidarView工程配置

用cmake-gui打开LidarView工程顶层cmake,环境变量配置如下

Variable Value Type
CMAKE_INSTALL_PREFIX E:/debug/install PATH
superbuild_python_version 3.9 STRING
paraview_version 5.9 STRING
Python3_EXECUTABLE E:/debug/install/Python/python.exe FILEPATH
ParaView_DIR E:/debug/lidarview-superbuild/common-superbuild/paraview/build PATH
Boost_USE_STATIC_LIBS OFF BOOL
Python3_LIBRARY E:/debug/install/Python/libs/python39.lib FILEPATH
Python3_INCLUDE_DIR E:/debug/install/Python/include PATH
PARAVIEW_PLUGIN_ENABLE_debugPlugin ON BOOL
PARAVIEW_PLUGIN_ENABLE_DatasetIOPlugin ON BOOL
PARAVIEW_PLUGIN_ENABLE_LidarPlugin ON BOOL
PARAVIEW_PLUGIN_ENABLE_PythonQtPlugin ON BOOL
PYTHON_INCLUDE_DIR E:/debug/install/Python/include PATH
PYTHON_LIBRARY_RELEASE E:/debug/install/Python/libs/python39.lib FILEPATH
Python3_LIBRARY_RELEASE E:/debug/install/Python/libs/python39.lib FILEPATH
LV_BUILD_PLATFORM Windows-AMD64 STRING
PCAP_LIBRARY E:/debug/lidarview-superbuild/common-superbuild/pcap/src/Lib/x64/wpcap.lib FILEPATH
CMAKE_CONFIGURATION_TYPES RelWithDebInfo STRING

输入上面的配置后依次点击Configure、Generate,完成后点击Open Project,即可打开LidarView的VS2017工程,可以正常调试,缺陷就是Windows的堆栈信息不那么好用,其实是RelWithDebInfo模式的锅,想要完美的调试信息得用Linux下的Debug版本

4 软件打包

请参考我的另一篇文章进行软件打包操作

5 Linux版上位机

Ubuntu20.04上面可以编译LidarView工程,配置流程可以模仿Windows版的配置,Linux版可以完美支持debug模式,只需要把SuperBuild里边的cmake文件改一下就得了

cmake 复制代码
set(CMAKE_BUILD_TYPE "Debug")
set(WITH_STATIC_LASZIP OFF)
set(SUPERBUILD_ALLOW_DEBUG ON)

在Ubuntu里边用QtCreator直接打开cmake并配置步骤3中的环境变量即可(Linux的路径需要改一改)

参考

本人提交的issue:IDE Debug Problem (#37) · Issues · LidarView / LidarView · GitLab (kitware.com)

如果你在前面的步骤2成功编译了SuperBuild工程,也可以用这个issue里边的方法配置QtCreator调试

注意事项

  • build的路径不能太深,否则很容易编译失败,解决办法参考文章
  • 加速工具最好用上,否则太慢了
  • 偶尔一两次莫名其妙的失败不算什么,多试几次就得了
  • SuperBuild的编译版本一定要跟LidarView的一致
相关推荐
holly_交易系统14 小时前
如何开发一套TRS交易系统:架构设计、核心功能与风险控制
大数据·人工智能·软件工程·软件构建·开源软件
SnXJi_19 小时前
纷析云开源财务软件:助力企业实现数字化自主权
java·gitee·开源·开源软件
蒲公英的孩子1 天前
Linux下 REEF3D及DIVEMesh 源码编译安装及使用
linux·c++·分布式·开源软件
与火星的孩子对话7 天前
Unity进阶课程【四】Recorder 插件的使用 - 录制游戏画面、音频、动画、图片、无水印
游戏·unity·图形渲染·开源软件
SnXJi_7 天前
纷析云开源财务软件:助力企业财务管理数字化转型
java·gitee·开源·开源软件·gitcode
SnXJi_7 天前
纷析云开源财务软件:企业财务数字化转型的灵活解决方案
java·gitee·开源·开源软件
SnXJi_8 天前
开源技术如何助力中小企业实现财务管理自主化?
java·gitee·开源·开源软件
架构文摘JGWZ9 天前
性能炸裂的数据可视化分析工具:DataEase!
信息可视化·开源软件·工具
ml1301852887411 天前
开发一个环保回收小程序需要哪些功能?环保回收小程序
java·大数据·微信小程序·小程序·开源软件
维度攻城狮15 天前
高效创建工作流,可实现类似unreal engine的蓝图效果,内部使用多线程高效执行节点函数
python·游戏引擎·开源软件·虚幻·graph·工作流