交叉编译OpenSSL

<openssl简介>
    SSL是Secure Sockets Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准。其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持。已经成为Internet上保密通讯的工业标准。
SSL能使用户/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,还可选择对用户进行认证。SSL协议要求建立在可靠的传输层协议(TCP)之上。SSL协议的优势在于它是与应用层协议独立无关的,高层的应用层协议(例如:HTTPFTPTELNET等)能透明地建立于SSL协议之上。SSL协议在应用层协议通信之前就已经完成加密算法、通信密钥的协商及服务器认证工作。在此之后应用层协议所传送的数据都会被加密,从而保证通信的私密性

<编译步骤>

➤编译平台和编译版本

使用的内核:linux3.1

使用的交叉编译器:arm-hisiv400-linux-gcc

使用的iperf的源码:OpenSSL 1.1.1

使用的主机:Centos7.0

下载源代码
    https://github.com/openssl/openssl
➤解压源代码
unzip openssl-master.zip
 
➤检测并对使用平台进行配置
./config no-asm shared --prefix=/home/Documents/openssl-master/install --cross-compile-prefix=arm-hisiv400-linux-
 
    参数解析:
    no-asm——>Do not use assembler code
    shared——>n addition to the usual static libraries, create shared libraries on platforms where it‘s supported.  See "Note on shared libraries" below。(编译连接成动态库)
    --prefix=/home/Documents/openssl-master/install——>指定编译后安装路径
    --cross-compile-prefix=arm-hisiv400-linux-gcc——>指定交叉编译工具链,这个前缀是" --cross-compile-prefix"还是"--host",暂时没有搞清楚规律与原则
➤编译
make
 
    注意:正在编译之前,需要打开./config 生成的Makefile中将-m64选项全部删除掉,因为平台是在32位的系统上使用,如果是64位,就跳过这一步骤。
➤安装
make install
 
    执行完成之后,就可以在指定的目录下找到编译出来的库文件
 
 

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">





posted @ 2017-10-04 17:39  流浪的Coder  阅读(11078)  评论(0编辑  收藏  举报