欢迎来到天天文库
浏览记录
ID:36006954
大小:3.64 MB
页数:24页
时间:2019-04-28
《迅为itop-4412开发板-实战教程-ssh服务器移植到arm开发板》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、iTOP-4412开发板-实战教程-ssh服务器移植到arm开发板本文转自迅为开发板:http://www.topeetboard.com在前面实战教程中,移植了“串口文件传输工具”,整个移植过程是比较简单的,而且我们没有做任何协议方面的了解,只是“配置”+“编译”就完成了整个工作,现在大家应该对移植开源软件有了基本的了解。入门视频教程中,给Windows系统安装了ssh客户端,给Ubuntu安装了ssh服务器,这样就可以通过ssh在Windows和虚拟机Ubuntu之间传输文件。其实在开发板上也是可以移植和安装ssh服务器,这样就可以
2、通过网络,在Windows和开发板之间传输文件。“实战教程-ssh服务器移植到开发板”,我们要完成的目标是能够通过ssh在开发板在Windows和开发板之间传输文件,当然也是可以使用ssh控制台。这个实验比前面的“串口文件传输工具”教程在工程(实用性)上是更加有用的,假如在实际的产品中,运行的是根文件系统,没有界面,如果数据需要在开发板和Windows传输数据,对于普通用户来说,是一个很好的选择,操作起来比较简单,只需要登陆然后直接将文件拖来拖去即可。这个实验的难度要比“串口文件传输工具”要大一点,ssh服务器需要依赖其他的库文件,所以
3、需要开发者先移植完成所有依赖的库文件,最后才能移植ssh服务器。1ssh官网和下载地址本小节的地址在作者没有代理的情况下,测试可用。OpenssL下载官网地址,如下所示。就是罗永浩捐过100万的那个开源组织。https://www.openssl.org/source/OpenssL的github下载地址,如下所示。https://github.com/openssl/opensslssh开源组织官网地址,如下所示。http://www.openssh.com/HXngKXng(o用X替代,以防文档上传之后被屏蔽)的ssh下载地址,测试
4、可以用,如下所示。https://openbsd.hk/pub/OpenBSD/OpenSSH/portable/zlib官网地址,如下所示。http://www.zlib.net/2详细移植过程源码使用迅为下载好的,编译器使用“arm-2009q3”。作者是在“/home/project/ssh-arm/”目录下,解压编译配置这三个需要移植的文件,用户如果在其它目录下,配置文件需要根据实际情况修改,安装目录是“/home/project/ssh-arm/”目录下的“install”文件夹,如下图所示。如下图所示,安装目录“instal
5、l”下新建两个文件夹“openssl-0.9.8h”和“zlib-1.2.3”,后面编译之后需要安装到这个目录下。2.1移植zlib拷贝“zlib-1.2.3.tar.gz”到Ubuntu系统,使用命令“tar-vxfzlib-1.2.3.tar.gz”解压,得到“zlib-1.2.3”文件夹,使用命令“cdzlib-1.2.3”进入“zlib-1.2.3”文件夹,如下图所示。接着使用命令“./configure--prefix=/home/project/ssh-arm/install/zlib-1.2.3”,设置配置文件,如下图所示
6、。使用命令“vimMakefile”修改编译参数,将所有gcc修改为“arm-none-linux-gnueabi-gcc”,如下图所示。接着使用编译命令“make”,如下图所示。接着使用安装命令“makeinstall”,如下图所示。在后面编译SSH的时候,需要用到zlib库,作者这里的路径是“/home/project/ssh-arm/install”下后面配置的时候需要对应,生成的库文件,如下图所示。这部分移植其实就是修改了编译器,修改编译器之后编译出的文件和不修改编译出来的文件是不一样的。在移植过程中,可能因为没有将寄存器配置为
7、目标系统的编译器,那么编译出来的一定运行不了。这里可以通过linux的strings命令查看非文本文件中的可读内容,通常可以和grep命令搭配使用。如下图所示,使用命令“strings-a/home/project/ssh-arm/install/zlib-1.2.3/lib/libz.a”可以查看到所有可读信息,可读信息比较多,可以保存为文本再查看,使用命令“strings-a/home/project/ssh-arm/install/zlib-1.2.3/lib/libz.a>log.my”重定位一下输出即可。这里需要用到的命令是“
8、strings-a/home/project/ssh-arm/install/zlib-1.2.3/lib/libz.a
9、grep“GCC””,如下图所示。如上图所示,可以看到编译器版本是“2009q3-6
此文档下载收益归作者所有