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
没有错误!恭喜了,成功安装。
openssl交叉编译记录的更多相关文章
- openssl交叉编译
目录 openssl交叉编译 title: openssl交叉编译 date: 2019/12/18 21:09:33 toc: true --- openssl交叉编译 tar xvf openss ...
- libcurl 支持 openssl 交叉编译 mips rt5350
By admin | 11月18日 0 Comment Advertisement 历经半个月终于把libcurl库编译出来,参考网上很多博客,最终把自己要的库编译出来. 首先说明一下,我要这个库的目 ...
- QT 5.7.0 交叉编译记录
这一篇记录 Qt 5.x cross-compiler with eglfs , 平台是 TI-AM3354, 上一篇SGX的移植就是为了这一次的交叉编译. 一. 下载QT的源码: 地址: http: ...
- 升级openssl 操作记录
openssl 是一群黑客最爱研究搞怪的一个软件为啥,据说openssl是一群数学家编写的一套算法 哈哈 好,说正事 openssl 经常发布补丁包,因为升级是避免不了的 步骤: 查看当前openss ...
- linux下apache+openssl配置记录
软件环境 Apache Httpd 2.2.29 (http://httpd.apache.org ) OpenSSL 1.0.1h (http://www.openssl.org/source ) ...
- openssl 交叉编译
建立build文件夹 mkdir build 在build文件夹中建立run.sh文件 cd build touch run.sh chmod 755 run.sh run.sh文件内容如下: #!/ ...
- wpa_supplicant 移植及 linux 命令行模式配置无线上网
本文涉及内容为linux 命令行模式配置无线上网 及 wpa_supplicant 移植到开发板的过程,仅供参考. 1.源码下载 wpa_supplicant 源码下载地址 :http://hosta ...
- imx6移植librtmp
一.openssl交叉编译 1.下载 https://www.openssl.org/source/ 版本不要太高,刚开始版本高了,有些函数取消了,链接不上 使用1.0.1f即可 2.编译成共享库 . ...
- 一个linuxk开发板的开发笔记
arm-fsl-linux-gnueabi开发笔记 //开发主机系统信息 $ lsb_release -a No LSB modules are available. Distributor ID:U ...
随机推荐
- Django models 常用数据类型
CharField class CharField(max_length=None[, **options]) # 字符串(存储从小到大各种长度) # 如果是巨大的文本类型,可以用 TextField ...
- [转]ui-grid User can't select the row by clicking the select checkbox available in the respective row when enableFullRowSelection : true"
本文转自:https://github.com/angular-ui/ui-grid/issues/5239 Try this style to enable checkbox selection: ...
- 《Photoshop CS4手绘艺术技法》
书名 <Photoshop CS4手绘艺术技法> 图片 时间 2017-4月 学习 想了想当初的学习动机,自己P图片可是P的是实在是丑就会做几张动图.看完了才发现这行博大精深而且自己的审 ...
- Java基础——正则表达式
一.什么是正则表达式 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表通常被用来检索.替换那些符 ...
- 【操作系统】二、JVM线程与Linux内核线程的映射
Linux从内核2.6开始使用NPTL (Native POSIX Thread Library)支持,但这时线程本质上还轻量级进程. Java里的线程是由JVM来管理的,它如何对应到操作系统的线程是 ...
- 【Java基础】13、抽象方法不能是static或native或synchroniz 原因及误解
在网上看到过这么一篇文章,是关于抽象方法不能是static或native或synchroniz 的原因.其中提到了这些关键字的意义以及与 abstract 关键字的冲突,大体内容如下: 1.abstr ...
- Spring基于XML方式的使用
一.IoC配置 IoC的配置是通过Spring的xml文件的bean标签进行的. 1.bean标签介绍 bean标签一般是在xml文件进行配置的,xml文件一般样式如下: <?xml versi ...
- 教你怎么调用Gitlab API
1.生成Personal Access Tokens 选择右上角用户信息setting—>Access Tokens 2.常用Gitlab API #获取所有的项目信息 #private_tok ...
- echarts环形图,自定义说明文字
一.代码 app.title = '已安装通讯盒电站统计'; option = { backgroundColor: '#0f0f31',//#0f0f31 title: { show:true, x ...
- git与vscode连接的一种简单方式
首先你得安装git,如果你还没安装git,推荐你一个视频git的下载与安装,这套视频包含VS code和git的基本使用,当你看完它,就可以不看我的这篇博客了. 废话不多说,直接进入正题: 首先进入g ...