系统环境:ubuntu 12.04 64位
EX_LIBS=
-ldl
源码:openssl-1.0.1t.tar.gz
交叉编译环境:arm-cortex_a9-linux-gnueabi-
1.解压:
tar -xf openssl-1.0.1t.tar.gz
cd openssl-1.0.1t
2.执行命令
./config no-asm shared
no-asm 是在交叉编译过程中不使用汇编代码代码加速编译过程.原因是它的汇编代码是对arm格式不支持的
shared 生成动态连接库
--prefix 指定make install后生成目录的路径,不修改此项则默认为OPENSSLDIR目录(/usr/local/ssl)
由于要移植到arm平台,不需执行 make install
3.修改Makefile文件
#CC= gcc
CC= arm-cortex_a9-linux-gnueabi-gcc
CC= arm-cortex_a9-linux-gnueabi-gcc
删除 CFLAG= 中的 -m64 ,否则无法编译通过。
#AR= ar $(ARFLAGS) r
AR= arm-cortex_a9-linux-gnueabi-ar $(ARFLAGS) r
#RANLIB= /usr/bin/ranlib
RANLIB= arm-cortex_a9-linux-gnueabi-ranlib
#NM= nm
NM= arm-none-linux-gnueabi-nm
4.执行命令
make
编译成功在当前目录生成 libssl.so