openssl是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连线者的身份。这个包被广泛应用于互联网的网页服务器上。下面这篇文章就给各位小伙伴介绍一下如何在ELF1开发板上移植openssl。
开发环境操作系统:Ubuntu18.04 交叉编译链:arm-poky-linux-gnueabi-gcc 内核版本:Linux4.1.15 openssl版本:openssl-1.1.1c.tar.gz
1、下载源码 https://www.openssl.org/source/old/1.1.1/
2、拷贝源码到开发环境/home/elf/work目录下解压 elf@ubuntu:~/work$ tar -zxvf openssl-1.1.1c.tar.gz
3、进入openssl-1.1.1c目录,执行./config生成Makefile文件 elf@ubuntu:~/work/openssl-1.1.1c$ ./config no-asm shared --prefix=/home/elf/work/openssl-1.1.1c/__install no-asm:在交叉编译过程中不使用汇编代码加速编译过程; shared:生成动态链接库; --prefix:指定make install后生成目录的路径;
4、修改Makefile 第8行修改为: 8 PLATFORM=linux-armv7 第124行修改为: 124 CNF_CFLAGS=-pthread 第125行修改为: 125 CNF_CXXFLAGS=-std=c++11 -pthread 注释掉90-92行、99行、103行、105-106行: 90 #CROSS_COMPILE= 91 #CC=$(CROSS_COMPILE)gcc 92 #CXX=$(CROSS_COMPILE)g++ 99 #MAKEDEPEND=$(CROSS_COMPILE)gcc 103 #AR=$(CROSS_COMPILE)ar 105 #RANLIB=$(CROSS_COMPILE)ranlib 106 #RC= $(CROSS_COMPILE)windres
5、设置环境变量 elf@ubuntu:~/work/openssl-1.1.1c$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi
6、编译 elf@ubuntu:~/work/openssl-1.1.1c$ make
7、安装 elf@ubuntu:~/work/openssl-1.1.1c$ make install
8、在/home/elf/work/openssl-1.1.1c目录下会生成一个__install目录,将此目录下的文件打包 elf@ubuntu:~/work/openssl-1.1.1c/__install$ tar -cvjf openssl.tar.bz2 *
9、将压缩包拷贝到ELF1开发板根目录下解压 root@ELF1:~# cd / root@ELF1:/# cp run/media/sda1/openssl.tar.bz2 . root@ELF1:/# ls bin dev etc home lib lost+found media mnt openssl.tar.bz2 proc run sbin sys tmp usr var www root@ELF1:/# tar -xvf openssl.tar.bz2
|