交叉编译openssl

交叉编译工具链下载:

Cross-compilation toolchains for Linux - Home

下载架构mips32libcglibc的稳定版交叉编译工具链在Ubuntu桌面下解压,文件夹名为mips32--glibc--stable-2020.08-1,交叉编译工具链命名规则:

常见名字:
arm-none-linux-gnueabi-gcc
arm-cortex_a8-linux-gnueabi-gcc
mips-malta-linux-gnu-gcc
命名规则:
arch-core-kernel-system
arch: 用于哪个目标平台。
core: 使用的是哪个CPU Core,如Cortex A8,但是这一组命名好像比较灵活,在其它厂家提供的交叉编译链中,有以厂家名称命名的,也有以开发板命名的,或者直接是none或cross的。
kernel: 所运行的OS,见过的有Linux,uclinux,bare(无OS)。
system:交叉编译链所选择的库函数和目标映像的规范,如gnu,gnueabi 等。其中gnu等价于glibc+oabi;gnueabi等价于glibc+eabi。

References

交叉编译环境

ARM 交叉编译工具链

先用echo $PATH检查当前所有的命令路径,在我的环境下显示:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

各个命令文件夹以逗号分隔,因为我们的交叉编译工具文件夹的目录是:

/home/yym/桌面/mips32–glibc–stable-2020.08-1/bin

所以应该这样设置临时环境变量,命令为:

export PATH=/home/yym/桌面/mips32--glibc--stable-2020.08-1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

临时环境变量只在当前的shell或其子shell下是有效的,shell关闭了,变量也就失效了,再打开新shell时就没有这个变量,需要使用的话还需要重新定义。

openssl源码下载地址:

GitHub - openssl/openssl: TLS/SSL and crypto library

选择一个版本下载后,在Ubuntu里面解压,在目录下打开终端输入命令:

./Configure --cross-compile-prefix=mips-buildroot-linux-gnu- shared linux-mips32

参数解析:

  • --prefix= 指定编译后安装路径,就是执行make install后的安装目录,如果只是想生成库文件,不需要安装,就不需要这个参数,如果需要编译后安装,则执行以下命令:

    ./Configure --prefix=/home/yym/桌面/openssl --cross-compile-prefix=mips-buildroot-linux-gnu- no-asm shared linux-mips32
    
  • --cross-compile-prefix=指定交叉编译工具链命令的前缀,以连接号结束

  • shared作用是生成动态链接库

  • no-asm表示不使用汇编代码,没有问题就不加,如果编译有问题再加:

    ./Configure --cross-compile-prefix=mips-buildroot-linux-gnu- no-asm shared linux-mips32
    
  • --openssldir=指定openssl配置文件的安装目录,如果不指定,默认安装到--prefix指定目录下的ssl目录

然后使用make命令编译,如果需要安装则运行make install

编译完成后发现,编译好的动态链接库libcrypto.so.1.1libssl.so.1.1和软链接libcrypto.solibssl.so

References

编译流程:

【经验分享】linux交叉编译 - openssl动态库-云社区-华为云

OpenSSL协议库交叉编译_少年的此间-CSDN博客

openssl交叉编译

交叉编译openssl、gmssl的正确方式

Toolchains Wiki:

Toolchains

交叉编译工具链下载:

GNU Toolchain | GNU Arm Embedded Toolchain Downloads - Arm Developer

Linaro Releases

全网可用交叉编译工具链大全

交叉编译环境详解:

交叉编译详解

Ubuntu 交叉编译工具链安装_K_CodeTime的博客-CSDN博客_ubuntu安装交叉编译工具链

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值