加载中...
openssl交叉编译

一、下载openssl源码

github3.0.1版本
openssl官网

二、交叉编译

1、解压
tar -xzvf openssl-3.0.1.tar.gz
2、配置交叉编译

以联咏NT98331平台为例

no-asm 关于汇编的模块不进行编译

shared 编译成动态链接库

no-async 不编译异步相关函数

–prefix 指定编译结果目录即安装目录

–cross-compile-prefix 指定交叉编译器及其路径,下面是交叉编译器已经再环境变量申明

CC 配置编译器

./Configure no-asm shared no-async --prefix=/home/liyongli/SVN/openssl331 --cross-compile-prefix=arm-ca53-linux-uclibcgnueabihf-novatek-8.4- CC=gcc

配置完成

打开Makefile,删除 -m64
有些编译器问题可能无法编译64位,且去除 -m64也不行只能修改源码。在include\openssl\bn.h该文件中修改

# ifdef SIXTY_FOUR_BIT_LONG
#  define BN_ULONG        unsigned long
#  define BN_BYTES        8
# endif

/*
 * 64-bit processor other than LP64 ABI
 */
# ifdef SIXTY_FOUR_BIT
#  define BN_ULONG        unsigned long long
#  define BN_BYTES        8
# endif
/*MN63 平台编译器需要锁定位32位
#undef SIXTY_FOUR_BIT
#undef SIXTY_FOUR_BIT_LONG
#define THIRTY_TWO_BIT
*/
# ifdef THIRTY_TWO_BIT
#  define BN_ULONG        unsigned int
#  define BN_BYTES        4
# endif

# define BN_BITS2       (BN_BYTES * 8)
# define BN_BITS        (BN_BITS2 * 2)
# define BN_TBIT        ((BN_ULONG)1 << (BN_BITS2 - 1))

# define BN_FLG_MALLOCED         0x01
# define BN_FLG_STATIC_DATA      0x02

先后执行make 和 make install即可完成编译

make
make install
上一篇:
curl交叉编译
下一篇:
iptables网络共享
本文目录
本文目录