前言
方便做嵌入式arm的交叉移植zlib库。
版本编译引导
- zlib在windows上的mingw32版本编译:《zlib开发笔记(一):zlib库介绍、编译和工程模板》
- zlib在ubuntu上的编译:《zlib开发笔记(二):zlib库介绍、ubuntu平台编译和工程模板》
- zlib在ubuntu上的arm交叉编译:《zlib开发笔记(三):zlib库介绍、在ubuntu上进行arm平台交叉编译》
- zlib在windows上的msvc2015 x64版本编译:《zlib开发笔记(四):zlib库介绍、编译windows vs2015x64版本和工程模板》
Zlib库
zlib被设计为一个免费的,通用的,法律上不受限制的-即不受任何专利保护的无损数据压缩库,几乎可以在任何计算机硬件和操作系统上使用。
下载
QQ群:1047134658(点击“文件”搜索“zlib”,群内与博文同步更新)
交叉编译环境准备
步骤一:交叉编译链工具制作
(略)
步骤二:引入交叉编译链工具到环境变量
创建环境文件
touch env.sh
编辑文件
gedit env.sh env.sh
#/bin/bash export PATH=/home/yang/work/tool/gcc-sigmastar-9.1.0-2019.11-x86_64_arm-linux-gnueabihf/bin:$PATH
(注意:PATH中的路径修改为交叉编译器的实际路径)
步骤三:启动控制台,并引入该文件
source ../tool/env.sh
步骤四:验证
输入头几个字母,使用tab:
并查看具体的版本:
zlib交叉编译
步骤一:解压
tar xvf zlib-1.2.11.tar.gz
步骤二:引入交叉编译器(请先执行“交叉编译环境准备”)
export CC=arm-linux-gnueabihf-9.1.0-g++
步骤三:配置configure(CC则是交叉编译)
步骤四:编译make
make
经过多方面的研究排除,最后发现是CC连接的库与实际连接库使用的gcc不同,修改如下:
gedit makefile
步骤五:make
make
步骤六:安装sudo make install
sudo make install
步骤七:检查编译结果
模块化
Ubuntu上对于库的模块化不包含库,模块化可参考《zlib开发笔记(一):zlib库介绍、编译和工程模板》
工程模板v1.0.0.
对应工程模板:zipDemo_v1.0.0_基础模板_zip库的基础环境.rar
(该工程模板,由于ubuntu系统问题而加载库为.so,所以忽略模块中自带的dll,所以模块无需修改引入参数)。