交叉编译OpenSSL

    SSL是Secure Sockets Layer( 安全套接层协议)的缩写,可以在Internet上提供秘密性传输。 Netscape公司在推出第一个 Web浏览器的同时,提出了SSL协议标准。其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持。已经成为 Internet上保密通讯的工业标准。
SSL能使用户/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,还可选择对用户进行认证。SSL协议要求建立在可靠的 传输层协议( TCP)之上。SSL协议的优势在于它是与 应用层协议独立无关的,高层的应用层协议(例如: HTTP, FTP, TELNET等)能透明地建立于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)



转载于:https://www.cnblogs.com/big-devil/p/7625890.html

你可能感兴趣的:(交叉编译OpenSSL)