当前位置: 首页 > news >正文

下载及交叉编译zlib库,记录

下载及交叉编译zlib库,记录

zlib库作用:

zlib 是一个非常著名的开源 压缩/解压缩库,主要用于 数据压缩和解压缩,它的核心作用是提供 高效、跨平台、轻量级的压缩功能


1️⃣ 核心功能

  1. 压缩数据

    • 将内存或文件中的数据压缩成更小的空间,节省存储或网络传输带宽。

    • 支持多种压缩级别,从快速压缩到高压缩比。

  2. 解压缩数据

    • 将压缩后的数据恢复成原始数据,保证数据完整性。

  3. 流式压缩

    • 可以对数据流进行压缩/解压,适合大文件或网络数据传输

1、下载源码
wget https://zlib.net/zlib-1.3.1.tar.gztar xf zlib-1.3.1.tar.gz
cd zlib-1.3.1
2、设置交叉编译环境

假设目标是 ARM(gnueabihf),你的交叉工具链前缀为 arm-v01c02-linux-musleabi-:

export CROSS_PREFIX=arm-v01c02-linux-musleabi-
export CC=${CROSS_PREFIX}gcc 
export AR=${CROSS_PREFIX}ar 
export RANLIB=${CROSS_PREFIX}ranlib 
export STRIP=${CROSS_PREFIX}strip

如果是 aarch64、mips、riscv 等,请替换成对应的交叉前缀。


3、配置

zlib 的编译系统比较简单,直接:

1、解压后,进入zlib-1.3.1/目录mkdir _install // 创立编译所得的库等的,存放路径2、在相同目录下 configure./configure --prefix=/home/zhs/tools/blue_2/zlib-1.3.1/_install --static

说明:

  • --prefix → 安装路径(可直接放到 sysroot 里)

  • --static → 编译静态库(去掉就是编动态库)


4、编译 & 安装
make -j4make install

安装完成后会生成:

http://www.xdnf.cn/news/1301221.html

相关文章:

  • 解决ECharts图表上显示的最小刻度不是设置的min值的问题
  • 从源码到可执行文件:hello.c 的二进制之旅
  • 【Golang】:数据类型
  • Wi-Fi 与蜂窝网络(手机网络)的核心区别,以及 Wi-Fi 技术未来的发展方向
  • Redisson分布式锁实战指南:原理、用法与项目案例
  • GPT 解码策略全解析:从 Beam Search 到 Top-p 采样
  • 流处理、实时分析与RAG驱动的Python ETL框架:构建智能数据管道(上)
  • CPU、内存、存储:生信分析任务的服务器配置精要
  • 第20章 LINQ 笔记
  • 8.15网络编程——UDP和TCP并发服务器
  • 【数据分享】上市公司创新韧性数据(2007-2023)
  • 数据驱动测试提升自动化效率
  • 终极手撸cpu系列-详解底层原理-CPU硬核解剖:从0和1到 看透CPU逻辑设计内部原理,弄清楚现代多线程cpu工作原理
  • Microsoft Visual Studio常用快捷键和Windows系统常用快捷键的整理
  • Linux-地址空间
  • 开发避坑指南(27):Vue3中高效安全修改列表元素属性的方法
  • 【学习笔记】NTP服务客户端配置
  • Go语言中安全停止Goroutine的三种方法及设计哲学
  • 前瞻性技术驱动,枫清科技助力制造企业借助大模型完成生产力转化
  • zabbix部署问题后常见问题
  • 新手入门Makefile:FPGA项目实战教程(二)
  • 【CV 目标检测】②R-CNN模型
  • 【Redis】分布式系统的演化过程
  • MyBatis的基本用法和配置方式
  • Highcharts Dashboards | 打造企业级数据仪表板:从图表到数据驾驶舱
  • 全球电商业财一体化:让出海品牌实现“看得见的增长“
  • demo 通讯录 + 城市选择器 (字母索引左右联动 ListItemGroup+AlphabetIndexer)笔记
  • Nginx反向代理与缓存实现
  • 人工智能与社会治理:从工具到生态的范式重构
  • Kafka生产者——提高生产者吞吐量