mips平台编译openssl-1.0.2s

mips平台编译openssl-1.0.2s

	./Configure shared no-asm no-dso no-ec_nistp_64_gcc_128 no-gmp no-jpake no-krb5 no-md2 no-rc4 no-rc5 no-rfc3779 no-sctp no-store no-zlib no-zlib-dynamic no-static-engine linux-elf

注意:如果想在设备中运行openssl程序,则需要关注其读取库和配置文件的路径
要用–openssldir=DIR参数来指定自定义路径,否则默认为 /usr/local/ssl

也可以用./config来配置,但是实际操作发现用这个脚本无法用linux-elf参数来指定目标平台,它默认以编译服务器的x86_64来设置相关参数,(会影响相关编译宏,可能导致运行openssl浮点数异常错误等),到时候只能手动修改相关Makefile和头文件,总会有疏漏之处,不推荐。

其他参数可参考INSTALL文档或./Configure --help

  • 修改Makefile来交叉编译
    如果.Configure参数配置得当,Makefile只需稍作修改
    根据实际平台选择交叉编译工具
   #CC= gcc
   改为CC=mips64-octeon-linux-gnu-gcc

如果要禁用sslv2, v3, 要追加编译宏,否则不用加

	CFLAGS += -DOPENSSL_NO_SSL2 -DOPENSSL_NO_SSL3

选择编译哪些项目: 一般来说我们只需要库文件和openssl可执行文件

	#build_all: build_libs build_apps build_tests build_tools
	改为:build_all: build_libs build_apps
  • 编译
make

生成的库文件在当前目录下,openssl可执行文件在apps目录下
如果需要减小文件体积,可以使用strip

mips64-octeon-linux-gnu-strip libssl.so.1.0.0 libssl.a libcrypto.so.1.0.0 libcrypto.a ./apps/openssl
  • 头文件
    ./Configure完成后会生成include文件夹,如果有其他进程代码需要调用openssl的接口,需要将头文件路径指定到这里,或者将其复制到公共头文件目录便于包含。

  • end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值