一、准备
- 操作系统:Windows 11
- IDE:Microsoft Visual Studio Community 2022 (64 位)
- CMake:cmake-3.23.0-rc5
- QT:5.12.12
按照github上CloudCompare/BUILD.md中的描述,安装CMake和QT CMAKE: https://cmake.org/download/ 我下载的是 cmake-3.23.0-rc5-windows-x86_64.msi
QT: https://www.qt.io/download-qt-installer?hsCtaTracking=99d9dd4f-5681-48d2-b096-470725510d34%7C074ddad0-fdef-4e53-8aa8-5e8a876d6ab4 我下载的是开源版Qt Online Installer for Windows进行在线安装 如果觉得速度慢或不想注册账户可以在下面链接进行下载 官方资源网站:https://download.qt.io/archive/qt/ 清华镜像站:https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/
二、编译
2.1 cloning
下载CloudCompare源码并下载项目中包含的子模块
git clone --recursive https://github.com/cloudcompare/CloudCompare.git
如果因网速原因某些子项目clone失败,可以手动删除项目内的子项目并执行命令进行更新
git submodule update --init --recursive
2.2 CMake Configuration
打开CMake,选择source目录和build目录后,点击Configure按钮 补充报错的参数Qt5_DIR 后再次Configure 再次补充报错的参数Qt5LinguistTools_DIR ,再次Configure后提示Configuring done配置完成。 其他配置参数暂不进行修改,点击Generate生成项目,Open Project打开visual studio工程。
Build
配置Release x64后全部生成即可成功。
三、运行
在VS解决方案中设置ccViewer或CloudCompare作为启动项进行调试,或者直接在目录中运行exe执行文件.\CloudCompare\build\ccViewer\Release\ccViewer.exe 或.\CloudCompare\build\qCC\Release\CloudCompare.exe
报错提示缺少QCC_GL_LIB.dll、CCPluginAPI.dll、QCC_IO_LIB.dll、CCAppCommon.dll,这些是CloudCompare子模块生成的动态链接库,在刚才编译时都已经生成,可以在相关文件夹中找到。
.\CloudCompare\build\libs\qCC_glWindow\Release\QCC_GL_LIB.dll
.\CloudCompare\build\libs\CCPluginAPI\Release\CCPluginAPI.dll
.\CloudCompare\build\libs\qCC_io\Release\QCC_IO_LIB.dll
.\CloudCompare\build\libs\CCAppCommon\Release\CCAppCommon.dll
将dll文件放在exe文件相同目录下,再次运行exe,会再次提示缺少一些CC和QT5相关的dll,分别找到放在目录下。qt5的dll在QT的安装路径下可以找到
.\CloudCompare\build\libs\qCC_db\extern\CCCoreLib\Release\CCCoreLib.dll
.\CloudCompare\build\libs\qCC_db\Release\QCC_DB_LIB.dll
C:\Qt\5.12.12\msvc2017_64\bin\Qt5OpenGL.dll
C:\Qt\5.12.12\msvc2017_64\bin\Qt5Widgets.dll
.\CloudCompare\build\libs\CCFbo\Release\CC_FBO_LIB.dll
C:\Qt\5.12.12\msvc2017_64\bin\Qt5Core.dll
C:\Qt\5.12.12\msvc2017_64\bin\Qt5Gui.dll
C:\Qt\5.12.12\msvc2017_64\bin\Qt5Concurrent.dll
再次运行时提示QT平台插件无法初始化 需要将QT安装路径下的platforms文件夹拷贝到可执行文件的目录下,最终目录中的内容如下
C:\Qt\5.12.12\msvc2017\plugins\platforms
最终目录中的内容如上图,再次打开软件可以正常运行,加载点云功能也正常。 以上遇到的QT相关的dll文件缺少问题和platform plugin的问题也可以通过修改环境变量解决,不再赘述。
相关链接和参考
http://c.biancheng.net/view/3851.html https://download.qt.io/archive/qt/ https://blog.csdn.net/u013019296/article/details/109234312 https://cmake.org/download/ https://www.qt.io/zh-cn/download https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/ https://www.cloudcompare.org/ https://github.com/cloudcompare/cloudcompare https://github.com/cloudcompare/cloudcompare/blob/master/BUILD.md https://blog.csdn.net/webzhuce/article/details/79960512 https://blog.csdn.net/weixin_43782998/article/details/121029405
|