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

news2025/1/19 17:06:09

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

1.zlib库编译:

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

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

         目录中有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版本重新执行上两步

        编译结果:

         

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

        结果如下:

        

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

2.lz4-1.9.4: 

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

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

        其中第一次点击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,如下图依次处理:

Linux版本:

make -j8

make install DESTDIR=/home

4.brotli-v1.1.0: 

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

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

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

make

make install 

5.liblzma:

 使用cmake编译即可

总结:

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1330998.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电力系统风储联合一次调频MATLAB仿真模型

微❤关注“电气仔推送”获得资料(专享优惠) 简介: 同一电力系统在不同风电渗透率下遭受同一负荷扰动时,其频率变化规律所示: (1)随着电力系统中风电渗透率的不断提高,风电零惯性响…

HTML5+CSS3+Vue小实例:彩带圣诞树

实例:彩带圣诞树 技术栈:HTML+CSS+Vue 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><…

⭐Unity 读取本地图片再区域裁剪

现在需求是将本地的图片读取之后再区域截图成新的图片 话不多说直接上代码 using UnityEngine; using System.IO;public class LocalRegionCapture : MonoBehaviour {public string fullScreenImagePath "Assets/SavedImages/fullScreenScreenshot.png";public str…

C语言学习NO.9-指针(一)内存和地址,指针变量,指针变类型的意义,const修饰指针,指针运算,野指针,assret断言,指针的使用和传址调用

指针是什么&#xff1f; 指针理解的2个要点&#xff1a; 1.指针是内存中一个最小单元的编号&#xff0c;也就是地址&#xff1b; 2.平时口语中说的指针&#xff0c;通常指的是指针变量&#xff0c;是用来存放内存地址的变量。 总结&#xff1a;指针就是地址&#xff08;变量的地…

玩转大数据21:基于FP-Growth算法的关联规则挖掘及实现

1.引言 关联规则挖掘是大数据领域中重要的数据分析任务之一&#xff0c;其可以帮助我们发现数据集中项目之间的关联关系。关联规则挖掘是指在交易数据或者其他数据集中&#xff0c;发现一些常见的关联项&#xff0c;如购物篮中经常一起出现的商品组合。关联规则挖掘的应用非常…

医学实验室检验科LIS信息系统源码

实验室信息管理是专为医院检验科设计的一套实验室信息管理系统&#xff0c;能将实验仪器与计算机组成网络&#xff0c;使病人样品登录、实验数据存取、报告审核、打印分发&#xff0c;实验数据统计分析等繁杂的操作过程实现了智能化、自动化和规范化管理。 实验室管理系统功能介…

初识Stable Diffusion

界面选项解读 这是在趋动云上部署的Stable Diffusion txt2img prompt &#xff08;1&#xff09;分割符号&#xff1a;使用逗号 , 用于分割词缀&#xff0c;且有一定权重排序功能&#xff0c;逗号前权重高&#xff0c;逗号后权重低 &#xff08;2&#xff09;建议的通用范式…

LabVIEW的六轴工业机器人运动控制系统

LabVIEW开发六轴工业机器人运动控制系统 本项目开发了一个高效的工业机器人控制系统&#xff0c;重点关注于运动学算法和轨迹规划算法的实现和测试。LabVIEW作为一个关键技术&#xff0c;在项目中扮演了核心角色。 系统研究与算法开发&#xff1a;首先&#xff0c;项目围绕机…

记一次生产慢sql索引优化及思考

一 问题重现 夜黑风高的某一晚&#xff0c;突然收到一条运营后台数据库慢sql的报警&#xff0c;耗时竟然达到了60s。 看了一下&#xff0c;还好不是很频繁&#xff0c;内心会更加从容排查问题&#xff0c;应该是特定条件下没有走到索引导致&#xff0c;如果频繁出现慢查询&…

ubuntu22.04+ROS2推荐匹配的gazebo版本

放大以后看到&#xff1a; 可以看到ros2推荐使用版本是humble-----匹配的是Ubuntu22.04LTS -------匹配gazebo Harmonic

Windows漏洞利用开发——利用SEH绕过GS保护

实验6 Windows漏洞利用开发 6.1实验名称 Windows漏洞利用开发 6.2实验目的 学习windows漏洞利用开发&#xff0c;使用kali linux相关工具对windows内目标程序进行漏洞利用 6.3实验步骤及内容 第二阶段&#xff1a;利用SEH绕过GS保护 了解GS编译选项&#xff0c;SHE异常处…

【多模态对话】《颠覆性创新:多模态对话与精准区域分割 - VPGTrans NExT-Chat》学习笔记

【OpenMMLab社区开放麦讲座】《颠覆性创新&#xff1a;多模态对话与精准区域分割 - VPGTrans & NExT-Chat》 1 VPGTrans 1.1 研究问题 1.1.1 模态对齐预训练开销很大&#xff1a;训练时间长 解决方案&#xff1a;迁移已有的VPG(比如BLIP-2 OPT 27B上的VPG) 1.2 训练技巧…

01背包详解,状态设计,滚动数组优化,通用问题求解

文章目录 0/1背包前言一、0/1背包的状态设计1、状态设计2、状态转移方程3、初始状态4、代码实现5、滚动数组优化二维优化为两个一维二维优化为一个一维&#xff0c;倒序递推 二、0/1背包的通用问题求最大值求最小值求方案数 0/1背包 前言 0/1包问题&#xff0c;作为动态规划问…

ESP32运行MicroPython——环境搭建

1、准备工作 硬件&#xff1a;ESP32-DevKitC V4 开发板、USB串口线 软件&#xff1a; flash_download_tool_3.9.5&#xff08;乐鑫烧录工具&#xff09;、官方下载地址 CP210x&#xff08;USB驱动程序&#xff09;、官方下载地址 ESP32_GENERIC-20231005-v1.21.0.bin&#xff…

将html转化成图片

如何将指定html内容转化成图片保存&#xff1f;这个问题很值得深思&#xff0c;实际应用中也很有价值。最直接的想法就是使用canvas&#xff0c;熟悉canvas的同学可以尝试一下。这里不做太多的说明&#xff0c;本文采用html2canvas库来实现。 html2canvas库的使用非常简单&…

JavaWeb笔记之SVN

一、版本控制 软件开发过程中 变更的管理&#xff1b; 每天的新内容;需要记录一下&#xff1b; 版本分支;整合到一起&#xff1b; 主要的功能对于文件变更的追踪&#xff1b; 多人协同开发的情况下,更好的管理我们的软件。 大型的项目;一个团队来进行开发; 1: 代码的整合 2: 代…

GPT2代码运行,个人文本生成助手,不依赖OpenAI API调用

0.前言: 感觉GPT很好玩,所以想要有个自己搭建GPT的写法,不依赖于OpenAI,需要翻墙太麻烦了,近日日本已经结合GPT4和机器,可以让他吓人,做出丰富的表情,如果自己训练的话,会塑造出什么样的机器人尚未可知…抱着好奇的心态,去github openai下载了个gpt2的模型来玩玩(其中遇到了许多…

arm汇编-补充-画图记忆 LDM/STM系列指令

说明 原始文章系列 https://azeria-labs.com/writing-arm-assembly-part-1/ 翻译-进作者的专栏可以翻到所有翻译 系列&#xff1a;https://zhuanlan.zhihu.com/p/109057983 系列&#xff1a;https://www.anquanke.com/post/id/86383 0x00 调试环境 使用arm架构的系统&#…

❀My学习Linux命令小记录之iperf❀

❀My学习Linux命令小记录之iperf❀ 目录 ❀My学习Linux命令小记录之iperf❀ ①功能说明&#xff1a; ②安装iperf&#xff1a; ③iperf的使用及参数介绍&#xff1a; ④注意事项&#xff1a; ⑤实例&#xff1a; iperf测试udp iperf测试tcp ①功能说明&#xff1a; i…

管理 Jenkins 详细指南

目录 系统配置 安全 状态信息 故障 排除 工具和操作 系统配置 系统&#xff0c;配置全局设置和路径&#xff0c;端口更改&#xff0c;下载地址等。 工具&#xff0c;配置工具、其位置和自动安装程序。 插件&#xff0c;添加、删除、禁用或启用可以扩展 Jenkins 功能的插…