首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >make/cmake:海思himix200交叉编译zlib

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

作者头像
10km
发布2022-01-10 09:32:42
发布2022-01-10 09:32:42
1.8K0
举报
文章被收录于专栏:10km的专栏10km的专栏

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

编译环境

Ubuntu 16.04 x86_64 himix2000 编译工具链

下载openssl源码

代码语言:javascript
复制
wget http://zlib.net/fossils/zlib-1.2.9.tar.gz

解压源码

代码语言:javascript
复制
tar xvf zlib-1.2.9.tar.gz

CMAKE 编译

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

代码语言:javascript
复制
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

代码语言:javascript
复制
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编译更简单。

代码语言:javascript
复制
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 指定安装路径
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/12/29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 编译环境
  • 下载openssl源码
  • 解压源码
  • CMAKE 编译
  • make
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档