zoukankan      html  css  js  c++  java
  • openssl交叉编译记录

    本次任务是要完毕嵌入式Linux下对openssl程序的支持。
        我的开发环境:ARM9开发板 和 嵌入式Linux操作系统。装有Linux系统(我的是ubuntu9.04)的PC机一台。串口和串口连接线。串口调试软件:minicom。

    交叉编译工具:arm-unknown-linux-gnu-gcc
        下载最新版本号的openssl-1.0.0:
        http://www.openssl.org/source/
       
        解压:$tar -xzvf  openssl-1.0.0.tart.gz
               $cd openssl-1.0.0
            openssl-1.0.0$ ./config no-asm shared prefix=/home/lanpeng/arm-openssl
        解释一下这里的參数: config就是配置脚本。这里不多说了。no-asm是在交叉编译过程中不使用汇编代码代码加速编译过程.原因是它的汇编代码是对arm格式不支持的。

    我试过了。假设没有这个參数,你的交叉编译一定出错。shared生成动态连接库。prefix=路径  就是你的安装文件夹。

    安装完毕后在这个文件夹下会有四个文件夹:bin lib include ssl。这四个文件夹很重要,openssl编程就须要这些文件夹的配合。
        配置完毕后我们还要改动Makefile文件(也许有更好的办法不用改动Makefile,这里请高手指点)。改动例如以下:

           
     62 #CC= gcc
     63 CC = arm-unknown-linux-gnu-gcc
     64 #CFLAG= -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAV    E_DLFCN_H -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall
     65 CFLAG= -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DOPENSSL_N    O_KRB5 -DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall
     66 DEPFLAG= -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MD2 -DOPENSSL_NO_R    C5 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_STORE
     67 PEX_LIBS=
     68 EX_LIBS= -ldl
     69 EXE_EXT=
     70 ARFLAGS=
     71 #AR= ar $(ARFLAGS) r
     72 AR = arm-unknown-linux-gnu-ar $(ARFLAGS) r
     73 RANLIB = arm-unknown-linux-gnu-ranlib
     74 #RANLIB= /usr/bin/ranlib
     75 #NM= nm
     76 NM = arm-unknown-linux-gnu-nm
     77 PERL= /usr/bin/perl
     78 TAR= tar
     79 TARFLAGS= --no-recursion
     80 MAKEDEPPROG= gcc
     81 LIBDIR=lib

    另一个须要更改的地方,全部-march后面相应的内核要是自己的arm的型号,默认的好像是奔腾的。你要改成自己的如armv5,这个在你运行的时候报错提示你,然后给出一堆型号你选择自己相应的就可以。

      即使用交叉编译工具去编译openssl。
      改动好了以后运行命令:  opensl-1.0.0$ make

      要编译5分钟左右,慢慢等吧。
      然后在输入命令:  opensl-1.0.0$ make install

      没有错误!恭喜了,成功安装。

  • 相关阅读:
    【ROC曲线】关于ROC曲线、PR曲线对于不平衡样本的不敏感性分析说引发的思考
    MathJax测试
    现有C2B模式小总结
    语音识别技术简介
    Spark运行调试方法与学习资源汇总
    [Apache Spark源码阅读]天堂之门——SparkContext解析
    对三维数据集的K-means聚类研究
    根据《关于“k-means算法在流式细胞仪中细胞分类的应用”的学习笔记总结》撰写的中期报告
    关于《k-means算法在流式细胞仪中细胞分类的应用》的学习笔记总结
    用shell脚本自动化安装hadoop
  • 原文地址:https://www.cnblogs.com/mqxnongmin/p/10495308.html
Copyright © 2011-2022 走看看