1、嵌入式 Linux 开发构建流程:1)选择嵌入式Linux发行版4、构建嵌入式、构建嵌入式 Linux 开发环境开发环境 商业的linux发行版为开发者提供了可靠的软件和完整的开发工具包。2)熟悉交叉开发环境和工具 交叉开发环境是嵌入式linux开发的基本模型。设置linux的环境配置及各种gnu工具链。宿宿主主机机3)目标板引导程序bootloader 初始化硬件平台,引导linux内核的启动,由于硬件平台是专门定制的,所以要下载、修改和编译bootloader,并用烧写程序烧写倒flash中。4)Linux 内核:嵌入式Linux开发一般需要重新定制和裁剪Linux内核,所以需要配置、编译
2、和移植内核。通常都是下载别人已经移植好的然后再添加自己的特定硬件的驱动程序,进行调试修改。目标机目标机 在根文件系统基础上建立应用程序的flash磁盘分区,一盘使用jffs2或者yaffs文件系统。这需要在内核中提供这些文件系统的驱动。5)Linux根文件系统:高级一点儿的操作系统一般都有文件系统的支持,系统启动必须的程序和文件都必须放到根文件系统中,因此需要构建自己的根文件系统。可以用专门的busybox软件进行剪裁定制。7)烧写bootloader、内核、根文件系统和应用程序,最后发布产品:6)建立应用程序分区:基于Linux的程序开发 Linux 下的 c程序设计Linux 下 的 sh
3、ell 编程 Linux 下用c 开发的应用程序需要编译生成可执行的二进制代码,然后才能被执行。网线串口线宿主机(开发平台)目标机(运行平台)4.1 宿主机环境搭建:宿主机环境搭建:1、安装linux发行版本redhat linux。2、安装跨平台开发工具链。3、配置宿主机的网络环境。1、跨平台开发工具链的建立:、跨平台开发工具链的建立:由于嵌入式开发系统的限制,在裁剪和定制嵌入式linux系统之前,通常要先在pc机上建立一个用于目标机的交叉编译环境,也就是将各种二进制工具程序集成为工具链。其中包括连接器(ld)、汇编器(as)、编译器(gcc)以及链接库(glibc)等。Linux使用GNU
4、的工具,社区开发者已经编译出了常用体系结构的 工具链,在网上可以下载这些工具,建立交叉开发环境。交叉编译工具的安装1)利用nfs或者文件夹共享,找到 并运行可执行文件 mnt/hgfs/wmshare/Linux7.2/install.sh实现交叉编译环境的安装。2)在配置文件profile中修改环境变量PATH。3)注销登录。armv4l-unknown-linux 工具 2、配置宿主机的网络环境。、配置宿主机的网络环境。a、windows和linux之间可以互相联通;b、NFS网络服务可以使用;c、关闭防火墙。4.2 目标机环境的搭建:目标机环境的搭建:1、目标板引导程序 bootload
5、er:vivi2、Linux 内核:kernel (zImage)3、文件系统:root.cramfs4、应用程序:yaffs.tar超级终端设置管理目标机上的系统目标机管理工具:超级终端设置目标机管理工具:超级终端设置2、X manager 软件的使用1、附件终端:注意安装完软件之后要重启电脑X manager 软件的使用 Xmanager是一个运行于Windows平台上的高性能的X window服务器。你可以在你的本地PC上同时运行多个Linux和Windows图形应用程序。主要用Xmanager软件实现对linux进行远程控制。Xshell Xshell是一个用于Windows平台的强大
6、的ssh、telnet、rlogin和serial终端仿真软件。它使得用户能轻松和安全地以命令方式访问多个远程Linux主机。Xbrowser 它使得用户能轻松和安全地以图形界面的方式访问多个远程Linux主机。可同时访问目标机和宿主机访问宿主机 linuxXshell 配置串口serial:setup 波特率 root 密码网 络 ssh:host ip root 密码Xbrowser 配置参见Xbrowser设置向导文档 通常的嵌入式系统的软件开发采用一种交叉编译调试的方式。交叉编译调试环境建立在宿主机(即一台PC 机)上,对应的开发板叫做目标板。运行Linux 的PC【宿主机】开发时使用
7、宿主机上的交叉编译、汇编及连接工具形成可执行的二进制代码(这种可执行代码并不能在宿主机上执行,而只能在目标板上执行),然后把可执行文件下载到目标机上运行。调试时的方法很多,可以使用串口,网线、并口、JTAG接口等,通常采用网络服务器nfs实现下载。三、配置宿主机的工具、ip、smb、nfs服务。1、设置宿主机 ip 地址。2、修改目标机启动 ip 地址。3、交叉编译源程序。4、配置 nfs 服务器。5、利用nfs服务下载并执行。vsftpd服务vsftpd服务使用方法服务使用方法1、启动开发板的网络服务:inetd2、宿主机端输入:ftp+开发板的ip常见命令:cd ls mkdir rmdir get mget(下载)put mput(上传)!+命令 对本机操作 注意:上传目录:/mnt/yaffs/或/var/(其他目录只读)下载是下载到ftp登录时的目录之中启动两个linux的vsftpd服务 service vsftpd restart在其中一个终端输入:ftp+另一个的ipVsftpd实现任意两个linux之间互相传递文件只能下载不能上传?