GDAL3.7编译一:普通压缩类算法库编译(zlib/zstd/lz4/liblzma/brotli)

        通过整理gdal所有依赖库,发现压缩类的三方库被依赖的频率很高,而且这些三方库又不依赖别的库,因此首先编译。

1.zlib库编译:

源码下载地址:GitHub - madler/zlib: A massively spiffy yet delicately unobtrusive compression library.

解压后目录如下(版本1.3):

GDAL3.7编译一:普通压缩类算法库编译(zlib/zstd/lz4/liblzma/brotli)_第1张图片         目录中有cmakelist.txt,直接用cmake编译即可

Windows版本:

        打卡cmd命令窗口:

    • cd zlib-1.3/
    • mkdir build
    • cd build
    • cmake -G "Visual Studio 14 2019 Win64" -DCMAKE_INSTALL_PREFIX="D:\zlib-1.3" ..
    • 到build文件夹下用vs2019打开sln项目工程文件进行编译
    • 首先编译ALLBUILD项目
    • 然后生成install
    • 切换release版本重新执行上两步

        编译结果:

         GDAL3.7编译一:普通压缩类算法库编译(zlib/zstd/lz4/liblzma/brotli)_第2张图片

Linux版本:

        源码目录中同样提供了configure文件,可直接使用GNU make编译,命令如下:

  •         unzip zlib13.zip
  •         cd zlib-1.3
  •         mkdir build
  •         cd build
  •         ../configure --prefix=/home/zlib-1.3
  •         make -j8
  •         make install

        结果如下:

        GDAL3.7编译一:普通压缩类算法库编译(zlib/zstd/lz4/liblzma/brotli)_第3张图片

以下库如无特殊步骤只表述关键步骤:

2.lz4-1.9.4: 

官网:GitHub - lz4/lz4: Extremely Fast Compression algorithm

Windows版本:打卡cmake-gui,如下图依次处理:

GDAL3.7编译一:普通压缩类算法库编译(zlib/zstd/lz4/liblzma/brotli)_第4张图片

        其中第一次点击3后会让选择vs版本,然后可根据需要进行设置,比如图中可勾选静态库编译,以及指定输出路径,然后在点generate,然后点击open project,用vs编译Allbuild,然后生成install。

Linux版本:

解压后直接make,make install DESTDIR=/home

3.zstd-1.5.5: 

官网:GitHub - facebook/zstd: Zstandard - Fast real-time compression algorithm 

Windows版本:

        官网提供了编译好的dll和lib等,可直接下载使用(但是提供的dll没有对应的lib文件,后续添加依赖可能会有问题),所以建议自行编译

        打卡cmake-gui,如下图依次处理:

GDAL3.7编译一:普通压缩类算法库编译(zlib/zstd/lz4/liblzma/brotli)_第5张图片

Linux版本:

make -j8

make install DESTDIR=/home

4.brotli-v1.1.0: 

均使用cmake 编译即可,没有特殊步骤,没有依赖。

Linux下选择Unix Makefiles:(注意设置输出目录)

GDAL3.7编译一:普通压缩类算法库编译(zlib/zstd/lz4/liblzma/brotli)_第6张图片

Configure完成后进入到build目录中:

make

make install 

5.liblzma:

 使用cmake编译即可

总结:

        这些库比较常用,而且被很多其他库所依赖,而自身没有依赖库,编译起来应该很顺利。 

你可能感兴趣的:(遥感GIS(GDAL),c++,三方库编译,gdal,三方库编译,cmake,zlib,zstd,liblzma,lz4)