zoukankan      html  css  js  c++  java
  • libLAS1.8.0 编译和配置(VS2013+Win7 64)(一)

    libLAS 是一个用来读写三维激光雷达数据(LiDAR) 的 C++ 库。在学习、科研和研发中都会广泛运用。怎样编译和配置自己所须要版本号的libLAS库确是一件麻烦耗时的事情。

    笔者在Win7 64位系统、CMake3.0.2和VS2013编译libLAS库,在编译过程中走了一些弯路和遇到了不好问题,终于一一解决。现以博客的形式记录下来。供相关研究的同仁学习交流。


    官方给的编译和安装教程中都用到了 OSGeo4W 。但由于在OSGeo4W下载各个所需库非常慢,笔者将所需的各个库都在CMake下编译。博客中也是这么做的。

    编译前的准备:下载库

    编译libLAS库还须要Boost、GDAL、TIFF和GeoTIFF四个库的支持,所以在编译libLAS前须要将所需的各个库进行下载和编译。


    由于笔者电脑中已经配置了PCL库,当中包括Boost库,故在此就不单独配置Boost。
    libLAS库下载:http://www.liblas.org/download.html
    GDAL库下载:http://trac.osgeo.org/gdal/wiki/DownloadSource
    LibTiff库下载:http://dl.maptools.org/dl/libtiff/
    Libgeotiff 库下载:ftp://ftp.remotesensing.org/pub/geotiff/libgeotiff/libgeotiff125.zip
    网上有说编译libLAS库不须要GDAL、LibTIFF和Liggeotiff库的,在实际用Cmake编译时。提示须要GDAL、LibTIFF和Libgeotiff库,这三个库之间分别在各自的基础上作为其它库支撑。因此这三个库都须要编译并配置。

    编译GDAL库

    http://trac.osgeo.org/gdal/wiki/BuildingOnWindows
    1、将文件夹(笔者文件夹E:CPlusPlusLib)中GDAL库解压到(E:CPlusPlusLibgdal-1.11.0)。


    这里写图片描写叙述
    2、打开cmd设置VS2013 64位编译环境工具。


    在cmd窗体中键入:cd /d D:Program Files (x86)Microsoft Visual Studio 12.0VCinamd64 键入: vcvars64.bat
    这里写图片描写叙述
    3、编译GDAL
    在cmd窗体中键入:cd /d E:CPlusPlusLibgdal-1.11.0 键入:nmake /f makefile.vc
    几分钟过后出现编译错误!这是由于默认nmake.opt文件里编译器版本号和系统位数设置未进行改动。
    这里写图片描写叙述
    打开文件夹E:CPlusPlusLibgdal-1.11.0下的namke.opt进行例如以下三个位置的改动。分别作用是配置vs2013编译器,系统位数和安装位置。


    这里写图片描写叙述
    这里写图片描写叙述
    这里写图片描写叙述
    编译成功
    这里写图片描写叙述
    分别运行:nmake /f makefile.vc install 和nmake /f makefile.vc devinstall
    等待两分钟后。GDAL就编译完毕了,在文件夹E:CPlusPlusLibgdal110中有bin,data,html,lib,include几个文件夹。
    这里写图片描写叙述

    编译TIFF库

    在cmd中分别键入:cd /d E:CPlusPlusLib iff-3.8.2 nmake /f makefile.vc
    这部分中方法和上部分有类似的地方,就简单描写叙述了。

    注意设置VS2013 64位编译环境工具vcvars64.bat。
    编译结束会出现例如以下错误:
    这里写图片描写叙述
    如今打开文件夹:E:CPlusPlusLib iff-3.8.2libtiff中tiffconf.h.vc进行改动,把当中的 /* #undef JPEG_SUPPORT /,/ #undef OJPEG_SUPPORT*/ 中的凝视去掉。再删掉 E:CPlusPlusLib iff-3.8.2libtiff下的全部 .obj 文件。

    然后再编译。这样就能够编译成功。
    这里写图片描写叙述
    编译成功:
    这里写图片描写叙述

    编译 Libgeotiff

    在E:CPlusPlusLib下创建一个文件夹libgeotiff,把Libgeotiff解压到E:CPlusPlusLiblibgeotiff下。同一时候在E:CPlusPlusLiblibgeotiff创建一个libtiff(文件夹名一定要为libtiff),再到E:CPlusPlusLib iff-3.8.2把编译好的libtiff文件夹复制到E:CPlusPlusLiblibgeotifflibtiff下。文件夹结构例如以下:
    这里写图片描写叙述
    这里写图片描写叙述
    在cmd中分别键入:
    cd /d E:CPlusPlusLiblibgeotiff-1.2.5
    nmake /f makefile.vc
    nmake /f makefile.vc install
    nmake /f makefile.vc devinstall
    完毕之后,在C:就会生成usr文件夹,里面的文件就是
    这里写图片描写叙述
    usr文件能够复制到其它文件夹进行使用。笔者将其放在文件夹:
    E:CPlusPlusLib,并重命名为:libgeotiff125待使用。

    编译libLAS库

    编译libLAS库须要使用到CMake和VS2013。将libLAS-1.8.0.tar.bz2直接进行解压。


    打开CMake设置例如以下,箭头处路径要一致,不然到时候VS编译时会出错!


    这里写图片描写叙述
    勾选WITH_GDAL和WITH_GEOTIFF,不然构建出错!


    这里写图片描写叙述
    加入GDAL 、TIFF和GeoTIFF的include和lib文件:
    这里写图片描写叙述
    设置安装libLAS路径,默认C盘,假设不改后面会出现故障!
    这里写图片描写叙述
    这里写图片描写叙述

    用VS2013打开E:CPlusPlusLiblibLAS-1.8.0libLAS.sln。


    分别ALL_BUILD 和INSTALL!
    这里写图片描写叙述
    编译成功!


    这里写图片描写叙述
    这里写图片描写叙述
    成功安装。
    这里写图片描写叙述
    下篇博客将会介绍怎样在VS2013中配置libLAS库,并附上測试程序。

    注意事项:用vs2010和vs2013编译方法是一样的,设置中稍微有所不同,博文中已有体现。编译过程中出现错误也基本一致,以下将可能出现的错误进行说明。


    安装失败!


    这里写图片描写叙述
    解决方法:
    前期CMake中安装路径未改动!

    改动后从新编译libLAS库就能够。


    CMakeGUI中改动或者打开cmake_install.cmake改动安装路径。

    # Set the install prefix
    if(NOT DEFINED CMAKE_INSTALL_PREFIX)
      set(CMAKE_INSTALL_PREFIX "F:/libLAS")

    这里写图片描写叙述

    **********回答留言朋友的问题2016/05/21!*****************
    在CMakeGUI中依据自己的Boost库位置。设置Boost的相关路径为例如以下:
    这里写图片描写叙述

  • 相关阅读:
    python线程的条件变量Condition的用法实例
    Django使用本地css/js文件的基本流程
    html添加css样式的两种方法
    Atom安装插件的几种方式
    Atom 编辑器实时预览 HTML 页面经典方法
    在Mac/linux上查找(并终止)进程锁定特定端口的几种方法
    Django使用Bootstrap的经典方法
    一个研发出身创业者的2019年收获与感悟
    百度DMA+小度App的蓝牙语音解决方案展示
    一个芯片小贩的2019年终总结
  • 原文地址:https://www.cnblogs.com/claireyuancy/p/7047238.html
Copyright © 2011-2022 走看看