LASlib/LAStools:Win10 + VS2017 编译LASlib/LAStools

一、下载解压

下载地址 http://lastools.github.io/download/LAStools.zip

解压地址 G:/LAStools/

二、编译

2.1 打开

用VS2017打开lastools.dsw。历史原因,一直点确定就可以。

2.2 移除失败的项目

2.3 修改代码

打开LASlib的头文件mydefs.hpp,定位到69行,只保留 #if defined(_MSC_VER),删除或注释改行其它代码。

2.4 注

Win 10系统需要,右键LASlib—属性—配置属性—常规—Windows SDK 版本—选择合适的。

否则可能出现错误:找不到Windows SDK 版本8.1。请安装所需的版本的Windows SDK或者在项目属性页中或通过右键单击解决方案并选择”重定解决方案目标”来更改SDK版本。

  

2.5 修改输出目录

右键LASlib—属性—配置属性—常规—输出目录—修改为“$(SolutionDir)$(ProjectName)\$(Configuration)\”。

2.6 修改头文件目录

右键LASlib—配置属性—C/C++—常规—附加包含目录—删除“...\laszip\stl

2.7 修改运行库

右键LASlib—属性—C/C++—代码生成—运行库—笔者选择“多线程DLL(/MD)”。(默认应该是多线程/MT)

2.8 生成lib

右键LASlib—重新生成。结果在 G:/LAStools/LASlib/Release/LASlib.lib

    

三、测试

3.1 新建工程

(1)配置属性—常规—Windows SDK版本,与前者保持一致。

(2)配置属性—C/C++—代码生成—运行库,(默认)选择多选程DLL(/MD),与前者保持一致。

3.2 头文件目录

配置属性—C/C++—常规——附加包含目录,添加 G:\LAStools\LASlib\inc 和 G:\LAStools\LASzip\src

3.3 静态库

配置属性—链接器—输入——添加 G:\LAStools\LASlib\Release\LASlib.lib

3.4 测试代码

#include "lasreader.hpp"
#include "laswriter.hpp"

/* 将las文件转换为laz文件 */
void MDtestLASlib::on_pushButton_clicked()
{
	LASreadOpener lasreadopener;
	lasreadopener.set_file_name("G:/a1.las");
	LASreader* lasreader = lasreadopener.open();

	LASwriteOpener laswriteopener;
	laswriteopener.set_file_name("G:/b2.laz");
	LASwriter* laswriter = laswriteopener.open(&lasreader->header);

	while (lasreader->read_point())
		laswriter->write_point(&lasreader->point);

	laswriter->close();
	delete laswriter;

	lasreader->close();
	delete lasreader;
}

3.5 验证结果

发布了63 篇原创文章 · 获赞 58 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/xinjiang666/article/details/104878678