MP157移植SSH

1.下载源码

主要下载三个软件包,zlib、openssl 和 openssh。下载对应的源码网址如下:

zlib-1.2.11                http://www.zlib.net/fossils/zlib-1.2.11.tar.gz

openssl-1.1.1d        https://distfiles.macports.org/openssl/openssl-1.1.1d.tar.gz

openssh-8.2p1        https://ftp.riken.jp/OpenBSD/OpenSSH/portable/openssh-8.2p1.tar.gz

2.移植zlib库

下载压缩包解压进入文件夹中,笔者使用正点原子教程中zlib移植的方法,首先先对交叉编译工具的环境进行初始化:

source /opt/st/stm32mp1/3.1-snapshot/environment-setup-cortexa7t2hf-neon-vfpv4-ostl-linux-gnueabi
zlib 工程进行配置:
./configure --prefix=/home/hh/tools/open-ssh/zlib
--prefix 选项指定 zlib 库的安装目录,将家目录下的 tools/open-ssh/zlib 作为 zlib 库的安装目录。
配置完make编译
编译完成之后,接着执行 make install 安装。
若没用正点原子的环境配置脚本也可以在./configure --prefix=/home/hh/tools/open-ssh/zlib之后修改Makefile,使用vi打开,将按照下面进行修改:
CC=/usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc
LDSHARED=/usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc
CPP=/usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc -E
AR=/usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-ar
编译器为ARM官方的交叉编译器。

3. 移植openssl

下载压缩包解压进入文件夹中,输入以下命令:
./Configure linux-generic32 no-asm shared no-async --prefix=/home/hh/tools/open-ssh/open-ssl CROSS_COMPILE=/usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf- CC=gcc -fPIC 

上面命令为openssl1.1.1版本配置,1.0.2版本配置使用下面命令:

./Configure --prefix=/home/hh/tools/open-ssh/open-ssl  os/compiler:/usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc

笔者使用openssl1.0.2版本时,编译可以通过,但是,下一步配置openssh时,一直出现 以下错误:

configure: error: *** OpenSSL headers missing - please install first or check config.log ***

建议使用笔者提供的链接版本,以免移植失败。

然后执行make,编译成成功执行make install。

4. 移植openssh

下载压缩包解压进入文件夹中,输入以下命令:

./configure --host=arm-none-linux-gnueabihf --with-libs --with-zlib=/home/hh/tools/open-ssh/zlib --with-ssl-dir=/home/hh/tools/open-ssh/openssl/ --disable-etc-default-login CC=arm-none-linux-gnueabihf-gcc AR=arm-none-linux-gnueabihf-ar

配置成功后,执行make。

5.拷贝openssh相关文件和密钥

这部分参考嵌入式Linux开发板移植SSH_嵌入式移植ssh-CSDN博客中作者的脚本,后面的步骤可以参考这篇博客。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值