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

海思 himix200交叉编译openssl

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

编译环境

Ubuntu 16.04 x86_64 himix2000 编译工具链

下载openssl源码

代码语言:javascript
复制
wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz

解压源码

代码语言:javascript
复制
tar xvf openssl-1.1.1d.tar.gz

执行Configure脚本

代码语言:javascript
复制
./Configure linux-generic32  \
	no-shared \
	no-asm \
	--prefix=/ilock/dist/himix200_openssl_111d \
	--cross-compile-prefix=arm-himix200-linux-
  • linux-generic32 指定目标平台类型, 有的文章指定为 linux-x86,也可以但会报错: arm-himix200-linux-gcc: error: unrecognized command line option ‘-m32’ 这种情况需要手工修改Makefile,删除文件中所有的 -m32 选项
  • no-shared 生成静态库,如果要生成动态库,则使用-shared选项
  • no-asm 在交叉编译过程中不使用汇编代码代码加速编译过程
  • –prefix 指定安装目录
  • –cross-compile-prefix 指定交叉编译器名字前缀

执行成功显示如下信息

代码语言:javascript
复制
Configuring OpenSSL version 1.1.0d (0x1010004fL)
    no-asan         [default]  OPENSSL_NO_ASAN
    no-asm          [option]   OPENSSL_NO_ASM
    no-crypto-mdebug [default]  OPENSSL_NO_CRYPTO_MDEBUG
    no-crypto-mdebug-backtrace [default]  OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
    no-dynamic-engine [forced]  
    no-ec_nistp_64_gcc_128 [default]  OPENSSL_NO_EC_NISTP_64_GCC_128
    no-egd          [default]  OPENSSL_NO_EGD
    no-fuzz-afl     [default]  OPENSSL_NO_FUZZ_AFL
    no-fuzz-libfuzzer [default]  OPENSSL_NO_FUZZ_LIBFUZZER
    no-heartbeats   [default]  OPENSSL_NO_HEARTBEATS
    no-md2          [default]  OPENSSL_NO_MD2 (skip dir)
    no-msan         [default]  OPENSSL_NO_MSAN
    no-rc5          [default]  OPENSSL_NO_RC5 (skip dir)
    no-sctp         [default]  OPENSSL_NO_SCTP
    no-shared       [option]  
    no-ssl-trace    [default]  OPENSSL_NO_SSL_TRACE
    no-ssl3         [default]  OPENSSL_NO_SSL3
    no-ssl3-method  [default]  OPENSSL_NO_SSL3_METHOD
    no-ubsan        [default]  OPENSSL_NO_UBSAN
    no-unit-test    [default]  OPENSSL_NO_UNIT_TEST
    no-weak-ssl-ciphers [default]  OPENSSL_NO_WEAK_SSL_CIPHERS
    no-zlib         [default] 
    no-zlib-dynamic [default] 
Configuring for linux-generic32
CC            =arm-himix200-linux-gcc
CFLAG         =-Wall -O3 -pthread 
SHARED_CFLAG  =-fPIC -DOPENSSL_USE_NODELETE
DEFINES       =DSO_DLFCN HAVE_DLFCN_H NDEBUG OPENSSL_THREADS OPENSSL_NO_DYNAMIC_ENGINE OPENSSL_PIC
LFLAG         =
PLIB_LFLAG    =
EX_LIBS       =-ldl 
APPS_OBJ      =
CPUID_OBJ     =mem_clr.o
UPLINK_OBJ    =
BN_ASM        =bn_asm.o
EC_ASM        =
DES_ENC       =des_enc.o fcrypt_b.o
AES_ENC       =aes_core.o aes_cbc.o
BF_ENC        =bf_enc.o
CAST_ENC      =c_enc.o
RC4_ENC       =rc4_enc.o rc4_skey.o
RC5_ENC       =rc5_enc.o
MD5_OBJ_ASM   =
SHA1_OBJ_ASM  =
RMD160_OBJ_ASM=
CMLL_ENC      =camellia.o cmll_misc.o cmll_cbc.o
MODES_OBJ     =
PADLOCK_OBJ   =
CHACHA_ENC    =chacha_enc.o
POLY1305_OBJ  =
BLAKE2_OBJ    =
PROCESSOR     =
RANLIB        =arm-himix200-linux-ranlib
ARFLAGS       =
PERL          =/usr/bin/perl

THIRTY_TWO_BIT mode
BN_LLONG mode
RC4 uses unsigned char

Configured for linux-generic32.

编译安装

代码语言:javascript
复制
make install
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/12/28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

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