vs2015+Qt5.6.3+CloudCompare2.10编译

引言
最近需要将自己做的算法以插件的形式集成在CloudCompare上,因此涉及到对CC的编译。这里就将完整过程进行记录。笔者是在windows平台使用,编译环境为:win7 64位系统 VS2013、PCL1.8 X64和X86 、Qt 5.6,因为要编译32位和64位的软件,故所有库都具有32和64两种类型。
CC
CC的官网:http://www.cloudcompare.org/
CC在Github:https://github.com/cloudcompare/cloudcompare
CC的编译:https://github.com/CloudCompare/CloudCompare/blob/master/BUILD.md

上面就是最重要的3个网站,从这里可以找到所有和编译相关的信息。博客中大部分内容直接翻译自上述3个网站中内容。

CC介绍
CloudCompare是一个三维点云(和三角网格)处理软件。 它最初设计用于比较两个三维点云(例如用激光扫描仪获得的点云)之间或点云与三角网格之间的比较。 这也是为什么叫做CloudCompare了。CC支持海量点云显示与加载,这也是我选择将自己的算法集成在CC上的一个重要原因。

编译准备
1.下载CC源码
安装CMake,这里我安装的是3.10版本
安装Qt,如果你不了解Qt编译CC也没有多少意义,劝你就此打住。因为做软件开发,我电脑里同时安装了Qt X86和X64版本。
2.2.打开CMake(请自行下载),将CloudCompare-master中的CMakeLists.txt拖拽至CMake中,Where is the source code保持默认,Where to build the binaries修改为D:/CouldCompare/CloudCompareWithPC作为编译的目录。可以勾选其中的Grouped和Advanced。点击Configure,选择Visual Studio 2015 (x64)
在这里插入图片描述

3.对QT5_ROOT_PATH进行设置
在这里插入图片描述

4.CMAKE_INSTALL_PREFIX进行设置,我这里选择

在这里插入图片描述

5.由于我需要用到PCL,这里勾选INSTALL的INSTALL_QPCL_PLUGIN
在这里插入图片描述

6.点击Configure,如果为PCL添加了环境变量,则不报错,如果提示找不到PLC路径,则可自行定位,PCL_DIR为D:/PCL/pcl-debug/cmake。

在这里插入图片描述

7.然后确保相关库的路径正确

在这里插入图片描述

FLANN库
在这里插入图片描述
QHull库
在这里插入图片描述

8.保证正确的情况下再次点击Configure,若是没有错误,可以点击Generate进行工程文件的生成。此时在CloudCompareWithPCL文件夹(我构建的文件夹用来进行CloudCompare的编译)中会生成工程文件。我们以管理员身份打开vs2015,然后打开CouldCompare.sln。

在这里插入图片描述

此时会提示找不到QCC_DB_LIB.dll等文件的问题。
在这里插入图片描述

我们右键QCC_DB_LIB打开属性,将输出目录修改为CloudCompare的输出目录,还有QCC_DB_LIB和QCC_GL_LIB和QCC_IO_LIB的输出目录也要修改。另外如果在编译的时候加入了libla库,可能会提示找不到liblas.dll等dll文件,这是因为没有添加这些库的环境变量导致,需要添加环境变量,或是直接将对应dll文件复制至CloudCompare的输出目录下,debug和release下都是这么操作,需要注意的是在release下进行编译时,由于部分依赖库的dll文件名字相同不能共存在一个文件夹下,因此环境变量只能单独添加debug或是release,我们可以把对应的dll文件直接复制到CloudCompare的输出目录下。
在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_35718950/article/details/85046269