一、zlib移植
zlib 是一套包含了数据压缩算法的函式库,此函数库为自由软件, 是一套免费、开源的 C 语言函数库。
libpng 依赖于 zlib 库, 所以要想移植 libpng 先得移植 zlib 库才可以。
下载源码:http:// https://www.zlib.net/fossils/
这里下载的是zlib-1.2.11.tar.gz。
解压:tar -xzf xxx.tar.gz
进入改目录下,编译整个工程:
初始化交叉编译工具的环境:source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
配置工程:./configure --prefix=/home/用户名/tool/zlib/
后面的路径是指点安装的位置,可自行选择编译工程:make
安装zlib: make install
扫描二维码关注公众号,回复: 14136353 查看本文章![]()
安装成功如下:
进入到 zlib 安装目录下,将 lib 目录下的所有动态链接库文件拷贝到开发板 Linux 系统/usr/lib 目录;(若失败了可以打包拷贝再解压)
若元开发板中有该库文件,需要先将出厂系统中原有的 zlib 库文件删除, 在开发板 Linux 系统下执行命令:rm -rf /usr/lib/libz.* /lib/libz.*
二、移植libpng
下载源码:https://github.com/glennrp/libpng/releases
解压:tar -zxf xxx.tar.gz
进入改目录下,编译整个工程:
初始化交叉编译工具的环境:source /opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
将 zlib 库安装目录下的 include 和 lib 路径导出到环境变量:
export LDFLAGS="${LDFLAGS} -L/home/用户/tool/zlib/lib"
export CFLAGS="${CFLAGS} -I/home/用户/tool/zlib/include"
export CPPFLAGS="${CPPFLAGS} -I/home/用户/tool/zlib/include"配置工程:./configure --prefix=/home/用户/tool/png --host=arm-poky-linux-gnueabi
后面的路径是指点安装的位置,可自行选择编译工程:make
安装libpng : make install
libpng 依赖于 zlib 库,需要告知编译器 zlib 库的安装目录,编译器才能找到 zlib 的库文件以及头文件,编译 libpng 的时才不会报错。
移植到开发板:进入到 libpng 安装目录,将 bin 目录下的所有测试工具拷贝到开发板 Linux 系统/usr/bin 目录;将 lib 目录下的所有库文件拷贝到 Linux 系统/usr/lib 目录。