make/cmake:海思himix200交叉编译zlib

本文介绍了如何在Ubuntu 16.04 x86_64环境下,使用CMAKE或configure进行Zlib 1.2.9的交叉编译,目标平台为ARM-himix200。通过指定CC环境变量和CMAKE_INSTALL_PREFIX,或者使用CMAKE_TOOLCHAIN_FILE,可以轻松完成交叉编译并安装到指定路径。
摘要由CSDN通过智能技术生成

因为zlib没有任何依赖库,而且代码很成熟,交叉编译还是比较简单的.

编译环境

Ubuntu 16.04 x86_64
himix2000 编译工具链

下载openssl源码

wget http://zlib.net/fossils/zlib-1.2.9.tar.gz

解压源码

tar xvf zlib-1.2.9.tar.gz

CMAKE 编译

如果你有安装cmake,可以使用cmake来完成交叉编译

cd zlib-1.2.9
mkdir build
cd build
## 在build下生成Makfile
CC=arm-himix200-linux-gcc \
cmake .. -G "Unix Makefiles"  -DCMAKE_INSTALL_PREFIX=../../himix200-zlib-1.2.9
## 编译安装到CMAKE_INSTALL_PREFIX指定的位置
cmake --build . --target install 
  • CC 环境变量指定C编译器为himix200的交叉编译器
  • CMAKE_INSTALL_PREFIX 指定安装路径
  • –build 指定cmake生成的Makfile工程文件位置, . 即为build文件夹
  • –target 指定cmake 执行的目标 install,安装位置由CMAKE_INSTALL_PREFIX 指定

如果你有定义himix200的工具链文件也可以使用CMAKE_TOOLCHAIN_FILE指定工具链文件来完成交叉编译
参见 https://gitee.com/l0km/faceapi/blob/master/faceapi-rpc-cpp/dependencies/cmake/arm-himix200-linux.toolchain.cmake

cd zlib-1.2.9
mkdir build
cd build
## 在build下生成Makfile
cmake .. -G "Unix Makefiles" \
         -DCMAKE_TOOLCHAIN_FILE=../../../cmake/arm-himix200-linux.toolchain.cmake \
         -DCMAKE_INSTALL_PREFIX=../../himix200-zlib-1.2.9
## 编译安装到CMAKE_INSTALL_PREFIX指定的位置
cmake --build . --target install 
  • CMAKE_TOOLCHAIN_FILE 指定交叉编译工具链文件

make

zlib原生是用configure来完成交叉编译的,如果你当前系统没有安装cmake,可以直接执行configure来生成交叉编译工程文件(Makefile),用make执行编译安装。编译过程看起来似乎比cmake编译更简单。

cd zlib-1.2.9
# 生成Makefile
CC=arm-himix200-linux-gcc ./configure --prefix=../../himix200-zlib-1.2.9
# 编译Makefile
make
# 安装到 --prefix 指定的路径
make install
  • CC 环境变量指定C编译器为himix200的交叉编译器
  • –prefix 指定安装路径
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

10km

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值