zoukankan      html  css  js  c++  java
  • 交叉编译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;">





  • 相关阅读:
    持久层框架:MyBatis 3.2(2)
    持久层框架:MyBatis 3.2(1)
    循环结构(二)
    Android LayoutInflater详解
    为什么调用 FragmentPagerAdapter.notifyDataSetChanged() 并不能更新其 Fragment?
    Android Support v4、v7、v13的区别和应用场景
    Android的string-array数据源简单使用
    FragmentTabHost切换Fragment时避免重复加载UI
    Ubuntu 安装Chrome步骤
    慢慢来,让好习惯自然来
  • 原文地址:https://www.cnblogs.com/big-devil/p/7625890.html
Copyright © 2011-2022 走看看