为了促进同行业人员(特指 LiDAR 点云处理人员或相近行业)的技术交流,解决平时开发过程中遇到的技术性问题,博主建立一个QQ群,欢迎大家积极加入,共同引领点云行业的快速发展 ~
群名:LiDAR点云部落
群号:190162198
对于 CloudCompare 的编译,网上教程有不少,但是存在以下缺点:
为此,博主将网上的教程进行一个大汇总,归纳出最核心的配置过程。当然最好的教程还是 CloudCompare 官网提供的教程:
在编译前,你需要了解以下内容:
CloudCompare 2.11.alpha
,Github 仓库提供的最新版本为 v2.10.3 (Zephyrus)
liblas
改为 pdal
VS2017
及以上。当然,如果你不计划使用读取 las 的功能,则低版本的 VS 也可以尝试
如果你非要用低版本的 VS 进行编译,则以下内容仅可做参考,未必能成功
在编译前,你需要下载并安装的软件:
以上涉及到的软件在 QQ群群文件中基本都有现成安装包或者下载链接
下面会对以上涉及到的软件逐一进行介绍
下载后安装即可。低版本的 VS 请在该网站下载
建议下载较高版本的 CMake。不管你下载的是安装版本还是解压版本,能用就可以
如果你想要编译出的 CloudCompare 能够加载 .pcd 点云,请配置 PCL 库;否则跳过
如果你想要编译出的 CloudCompare 能够加载 .las / .laz 点云,请配置 PDAL 库;否则跳过
由于 PDAL 库需要太多的第三方库,因此 PDAL 官网都不建议你自己去编译 PDAL 库,而是用现有的软件来直接使用 PDAL 库
目前官网推荐下载 Conda 来使用 PDAL 库。也可以使用 OSGEO4W 中包含的 PDAL 库
你可以选择以下两个中的任意一个来使用 PDAL 库:
方法一:利用 Conda
此部分教程你可以根据官网来进行配置
Conda 分为 Anaconda 和 Miniconda
官网还提供了 Miniconda 的下载,博主使用的是 Anaconda
下载完毕后,然后傻瓜式安装即可,然后打开 Anaconda Promot
依次执行以下命令:
首先测试是否安装成功:
conda --version
然后测试已经安装的包(没什么用):
conda list
然后下载 PDAL 库:
conda create --yes --name myenv --channel conda-forge pdal
然后安装 PDAL 库:
conda install --name myenv --channel conda-forge pdal
其实到这里就可以了,就可以开始 CMake CloudCompare 了,下面的三个步骤没什么用
然后检测并升级 PDAL(没什么用):
conda update pdal
下载测试数据(没什么用):
explorer.exe https://github.com/PDAL/data/raw/master/autzen/autzen.laz
测试 PDAL(换成你自己的路径,这步也没什么用):
pdal info C:\Users\Never\Desktop\autzen.laz -p 0
这些命令执行后对应的结果见附录1. Anaconda 命令执行结果展示
方法二:利用 OSGEO4W
下载 64bit
)该部分教程可参考:PDAL:OSGeo4W安装配置测试PDAL
用 OSGEO4W 配置 PDAL ,你需要注意以下几点:
License
的下载,直接勾选 I Agree
,继续下一步即可OSGEO4W installation completed successful
,那就说明你还没下载完成;如果你下载失败,请下载 QQ群群文件中的此部分内容如果有哪位兄台想自己体验一把 PDAL 的编译过程,请参考这个英文教程,英文很简单的,不要怕。不过你要注意,这个编译也是基于 VS2017的!
注意 Qt 版本最好在 5.7 以上,而且注意和你的编译器相匹配,具体请参考我的博客 PCL+VS+Qt+Win10 的综合配置精华
1. 新建以下文件夹目录:
-------- C:\Users\Never\DesktopCC
| -----CloudCompare-2.10.3 # 存放源码
| -----build # 存放 build 出来的工程)
| -----prefix # 存放最终的 CloudCompare.exe)
2. 打开 CMake GUI,按照以下流程进行操作:
Configure
遇到失败
Ungrouped Entries
下的 QT5_ROOT_PATH
选择你的 Qt 路径,比如我的是:D:/Qt/5.7/msvc2013_64
CMake
下的 CMAKE_INSTALL_PREFIX
更改路径为新建的 prefix 文件夹路径PDAL
,请勾选 OPTION
下的 OPTION_PDAL_LAS
再次 Configure
再次遇到失败
Ungrouped Entries
下的 PDAL_DIR
选择你的 PDAL 路径,比如我的是:D:/Anaconda3/envs/myenv/Library/lib/cmake/PDAL
再次 Configure
Generate
3. 打开 build
文件夹下的 CloudCompareProjects.sln
,依次执行一下内容:
x64
ALL_BUILD
右键 - 重新生成,如果报错,请检查上面的配置INSTALL
右键 - 重新生成,如果报错,请检查上面的配置CloudCompare
项目右键 - 设置为启动项目
CloudCompare
右键 - 属性 - 配置属性 - 常规 - 输出目录,改为你设置的 CMAKE_INSTALL_PREFIX
路径下的 CloudCmpare
路径,如我的是:C:\Users\Never\Desktop\CC\prefix\CloudCompare
,应用 - 确定(这个请参考官网推荐的后处理解决方案)1. Visual Studio 下载哪个版本的问题
Error C2280
的错误,这个错误可能会涉及到改源码,很麻烦的2. CMake 不过的问题
Configure
失败,则检查你的 QT5_ROOT_PATH
路径PDAL_DIR
路径设置是否正确3. Generate 失败的问题
4. ALL_BUILD 重新生成失败
5. INTSALL 重新生成失败
6. Ctrl + F5 无法启动的问题
输出目录
路径7. Ctrl + F5 启动后提示缺少 XXX.dll
Everything
软件搜索对应的 dll,并复制到 CloudCompare.exe
的同级目录下,比如我的是 C:\Users\Never\Desktop\CC\prefix\CloudCompare
8. 复制 dll 后出现动态调用失败的问题
9. 编译 CloudCompare 缺少 xxx.lib
QCC_DB_LIB
、QCC_GL_LIB
、QCC_IO_LIB
的常规输出目录为 CloudCompare.exe
的同级目录即可10. 提示缺少 GDAL203.dll 的错误
11 生成 ALL)BUILD 时提示 E2512
的错误
12. 在 ALL_BUILD 时遇到 C2666
的错误
CloudCompareProjects.sln
的 VS 版本是否一致13. …
强烈推荐
PDAL:OSGeo4W安装配置测试PDAL
CloudCompare2.9.1编译
VS2013下CloudCompare的编译
Win7+VS2017+cloudcompare 编译和运行
CloudCompare:Win10 + VS2017 + Qt5.9 + CMake3.14 编译CloudCompare2.1x
其它
【CloudCompare2.9.1编译】vs2015+Qt5.7.1+win10环境下相关注意事项
vs2012+win8.1+cloudcompare源码编译
后期研究如何编写 CC 插件可能会用到的链接
libLAS1.8.0 编译和配置(VS2013+Win7 64)(一)
CloudCompare学习-添加菜单
八叉树Octree
这个博主的系列文章很好
CloudCompare插件编写一(插件框架)
CloudCompare插件编写二(数据结构)
CloudCompare插件编写三(算法实现)
1. Anaconda 命令执行结果展示
(base) C:\Users\Never>conda --version
conda 4.7.10
(base) C:\Users\Never>conda list
# packages in environment at D:\Anaconda3:
#
# Name Version Build Channel
_ipyw_jlab_nb_ext_conf 0.1.0 py37_0
... ... ...
zstd 1.3.7 h508b16e_0
(base) C:\Users\Never>conda create --yes --name myenv --channel conda-forge pdal
Collecting package metadata (current_repodata.json): done
Solving environment: done
==> WARNING: A newer version of conda exists. <==
current version: 4.7.10
latest version: 4.7.11
Please update conda by running
$ conda update -n base -c defaults conda
## Package Plan ##
environment location: D:\Anaconda3\envs\myenv
added / updated specs:
- pdal
The following packages will be downloaded:
package | build
---------------------------|-----------------
boost-cpp-1.68.0 | h6a4c333_1000 31.1 MB conda-forge
... |
zstd-1.4.0 | hd8a0e53_0 1.5 MB conda-forge
------------------------------------------------------------
Total: 291.9 MB
The following NEW packages will be INSTALLED:
boost-cpp conda-forge/win-64::boost-cpp-1.68.0-h6a4c333_1000
... ...
zstd conda-forge/win-64::zstd-1.4.0-hd8a0e53_0
Downloading and Extracting Packages
jsoncpp-1.8.4 | 118 KB | ################################################################### | 100%
...
proj4-6.1.0 | 8.4 MB | #################################################################### | 100%
...
# All requested packages already installed.
(base) C:\Users\Never>conda update pdal
PackageNotInstalledError: Package is not installed in prefix.
prefix: D:\Anaconda3
package name: pdal
(base) C:\Users\Never>explorer.exe https://github.com/PDAL/data/raw/master/autzen/autzen.laz
(base) C:\Users\Never>pdal info C:\Users\Never\Desktop\autzen.laz -p 0
(base) C:\Users\Never>
2. 一些过程截图
OSGEO4W PDAL 安装完成
没有 License ,勾选 I Agree 下一步
下载 x64 的 OSGEO4W
安装 OSGEO4W 时候点击 skip 前后