




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计成果说明书题 目:Linux下基于minigui的软键盘程序调试学生姓名:苏腾云/王润志/蒋强/游寺豪/沈龙/陈阳狮 学 号:0800403220/0800403222/081311128081311101/081311136/0800403109学 院: 机电工程学院 班 级: AC08电信 指导教师: 赵秋亮老师 浙江海洋学院教务处2011年07月01日26浙江海洋学院课程设计成绩评定表2009 2010学年 第 2 学期学院 机电工程 班级 AC08电信 专业 电子信息工程学生姓名(学 号)苏腾云/王润志游世豪/蒋强沈龙/陈阳狮课程设计名 称嵌入式系统课程设计题 目MiniGUI移植指导教师评语指导教师签名:年 月 日答辩评语及成绩答辩小组教师签名:年 月 日附2:浙江海洋学院课程设计任务书2010 2011学年 第 2 学期学院 机电工程 班级 AC08电信 专业 电子信息工程学生姓名(学号)苏腾云/王润志游世豪/蒋强沈龙/陈阳狮课程名称嵌入式系统课程设计设计题目Linux下基于minigui的软键盘程序调试完成期限自 2011 年 6 月 20 日至 2011 年 7 月 1 日 共 2 周设计依据本次设计所需知识1. S3C2410的基本知识2. Linux系统常用命令3. linux编辑器VI的使用方法4. MiniGUI的基本知识5. MiniGUI的移植方法设计要求及主要内容1 熟悉linux系统的常用操作命令2 熟悉VI(或GVIM)的操作方法3 完成虚拟机VM的安装4 完成虚拟机VM下的Linux(RedHat9.0)的安装5 完成交叉编译环境的建立6 完成PC机环境下minigui的安装与配置,QVFB的安装7 完成minniGUI在S3C2410A上的移植8 利用示例程序包中程序验证移植结果,结果能在LCD与QVFB上正常显示9 调试基于minigui的软键盘程序,并能在QVFB和LCD上显示。10 录制设计结果演示和解说视频11 完成课程设计说明书的撰写。撰写格式要求按照机电工程学院毕业设计文本规范。参考资料1. ARM9嵌入式系统设计基于S3C2410与Linux.徐英德等.北京航空航天大学出版社.2007年.2. 嵌入式系统实验指导书.自编.3. 实验指导书EL-ARM-830型教学实验系统(ARM9).北京精仪达盛科技有限公司.4. Minigui实验指导书(for S3C2410).北京精仪达盛科技有限公司.5. Minigui编程指南.飞漫公司.6. FTP资源: 用户名:dx 密码:1234. 在/ARM目录下。指导教师签字日期电子与信息工程专业课程设计Linux下基于minigui的软键盘程序调试苏腾云 王润志 游世豪蒋强 沈龙 陈阳狮(浙江海洋学院 机电工程学院,浙江 舟山 316000)摘要MiniGUI是由北京飞漫软件技术有限公司创办的开源Linux图形用户界面支持系统,经过近些年的发展,MiniGUI已经发展成为比较成熟的性能优良的、功能丰富的跨操作系统的嵌入式图形界面支持系统。“小”是MiniGUI的特色,它目前已经广泛应用于通讯、医疗、工控、电子、机顶盒、多媒体等领域。目前,MiniGUI的最新版本为MiniGUI 3.0,所以MiniGUI对中文的支持最好。它支持GB2312与BIG5字元集,其他字元集也可以轻松加入。关键字:MiniGUI;Red Hat linux9;qvfb;交叉编译目 录前 言11 方案设计22.虚拟机VM下的Redhat9.0的安装33.交叉编译环境的建立54.MiniGui在linux运行环境中的建立:64.1 QVFB的安装:642 MiniGui相关文件在linux中QVFB下的安装运行:74.2.1 安装MiniGui的资源文件:74.2.2 配置与安装MiniGUI库文件:74.2.3 在QVFB上显示例样程序:95 Linux下FrameBuffer的驱动运行115.1 framebuffer驱动的添加115.2 Framebuffer设备文件的添加135.3 Framebuffer程序测试135.3.1 配置NFS网络文件系统135.3.2 用交叉网线把主机和实验系统连接:145.3.3 利用网络烧写软件imagewrite烧写大系统内核和bigroot文件系统156、MiniGui在S3C2410上的移植176.1安装MiniGUI的资源文件176.2配置与安装MiniGUI的库文件186.3 交叉编译mg-samples-1.6.10中的示例文件196.4 root文件的生成及NFS的配置与启动196.4.1 root文件的生成:196.4.2 Linux下NFS的配置及启动:206.4.3 用交叉网线把主机和实验系统连接:206.5 烧写root文件系统并运行MiniGUI程序227.设计过程中的问题及解决办法247.1库文件libminigui-1.3.so.3.0.0找不到问题247.2 配置NFS网络文件系统时出现的问题248、设计心得25参考文献26前 言MiniGUI 是一款面向嵌入式系统的高级窗口系统(Windowing System)和图形用户界面(Graphical User Interface,GUI)支持系统,由魏永明先生于 1998 年底开始开发。2002 年,魏永明先生创建北京飞漫软件技术有限公司,为 MiniGUI 提供商业技术支持,同时也继续提供开源版本,飞漫软件是中国地区为开源社区贡献代码最多的软件企业。最后一个采用 GPL 授权的 MiniGUI 版本是 1.6.10,从 MiniGUI 2.0.4 开始 MiniGUI 被重写并使用商业授权。 历经十余年时间, MiniGUI 已经成为性能优良、功能丰富的跨操作系统嵌入式图形用户界面支持系统,支持Linux/uClinux、eCos、 uC/OS-II、VxWorks、ThreadX、Nucleus 、pSOS、OSE 等操作系统和数十种 SoC 芯片,已验证的硬件平台包括 ARM-based SoCs 、MIPS based SoCs 、IA-based SoCs 、PowerPC、M68K(DragonBall /ColdFire)、Intel x86 等等,广泛应用于通讯、医疗、工控、电力、机顶盒、多媒体终端等领域。 使用 MiniGUI 成功开发产品的企业有华为、中兴通讯、大唐移动、长虹、TCL、联想、迈瑞、南瑞、炬力、D2 等。这些用户广泛分部在中国大陆、台湾、新加坡、韩国、美国、德国、意大利、印度、以色列等国家和地区。 值得一提的是,在中国自主开发的 3G 通讯标准 TD-SCDMA 中,约有 60% 获得入网许可证的 TD-SCDMA 手机使用 MiniGUI 作为其嵌入式图形平台,以支撑浏览器、可视电话等 3G 应用软件的运行,其中有联想TD30t、海信 T68、中兴通讯 U85 等大家熟悉的 TD 手机型号。 在 MiniGUI 的基础上,飞漫软件研发了 mDolphin (基于开源的浏览器核心 WebKit 的嵌入式浏览器,满分通过 Acid3 的基准测试)、mPeer (为使用 Java 技术的嵌入式设备提供高效的 J2SE AWT/Swing 实现支持),并且开发了基于 Eclipse CDT 的可视化集成开发环境,为开发人员提供所见即所得(WYSIWYG)的界面设计环境。 2010年,飞漫软件把最新版的 MiniGUI、mDolphin、mPeer、mStudio 等系统整合在一起,推出了合璧操作系统(HybridOS)解决方案,是一整套专为嵌入式设备打造的快速开发平台,集成了飞漫软件10年的嵌入式行业研发经验和众多成熟的产品,使众多的希望在嵌入式设备上做开发的中小型企业,摆脱了“不稳定的内核以及驱动程序”、“交叉编译工具链、基础函数库存在大量缺陷”、“不恰当的开源软件”、“高水平嵌入式开发工程师缺乏”等这些问题的困扰,从而能够在一个运行稳定、功能强大的小巧系统内核基础上,专注开发产品。合璧操作系统(HybridOS)采用新的商业授权模式,性价比颇高。 截止2010年9月,MiniGUI 的最新版本是3.0.10, MiniGUI 将作为合璧操作系统(HybridOS)的一个组成部分而不断演进,推荐新老用户使用合璧操作系统(Hybridos)作为嵌入式开发平台,必将节省大量的开发成本和时间。1 方案设计根据设计要求基本设计计划按照图2.1所示流程:完成虚拟机VM下的Red Hat Linux9.0的安装完成虚拟机VMware Workstation 的安装dWorkstation的安装完成交叉编译环境的建立PC机环境下MiniGUI的安装与配置,及QVFB的安装MinniGUI在S3C2410上的移植在QVFB上显示例程helloworld在LCD上显示例程bmpbkgnd完成课程设计说明书的撰写 图1.1 系统设计总框图2.虚拟机VM下的Redhat9.0的安装启动虚拟机VM,新建一个虚拟机(注意在选择客户机操作系统的时候,应该选择LINUX系统 版本应该是RED HAT LINUX)其他的都可以默认 进行下一步就可以,如图2.1所示安装界面 1图 1.0 vm安装界面图2.1 选择安装的系统进入安装LINUX安装页面,如图2.2所示:图2.2 LINUX的安装页面 1图2.2 LINUX的安装页面 点击右面的CD-ROM,进入,并选择使用ISO镜像。选择第一个镜像文件进行安装。在安装语言选择中,我们可以选择【简体中文】,选择键盘和鼠标的时候,我们选择系统默认的就好了 其他的也一直默认安装下去即可。根口令设置时可简单设置一个,例如12345,自己不会遗忘即可。再继续安装会出现选择安装软件包(注意在选择安装包的时候 应该选择自己所需的安装包进行安装,不太清楚者建议全部安装,以免在后面的实验中会出现错误)点击“下一步“安装。在安装软件包的时候,注意会让你手动选择第二个和第三个软件包安装(方法:在RED HAT LINUX那里右击,选择设置,在HARDWARE中选择CD-ROM.使用第二个ISO镜像,第三个也是如此)在安装完第三个镜像文件后。进行用户账号设置。用户名:root 密码:12345,到这 Ret Hat Linux9 就安装完成。 建立交叉编译环境在根目录在创建linuette目录。将/实验软件/tools/目录中的RPMS文件夹拷贝到linuette目录中。打开终端,进入RPMS中(指令:# /opt/linuette/RPMS)进行交叉编译库的安装。执行rpm -Uvh *.rpm此时会出现错误,导致不能在根目录下的/opt文件夹内生成一个包含我们所需的交叉编译库的host文件夹。执行命令:rpm -Uvh -oldpackage tmake-1.7-3mz.norch.rpm安装低版本tmake-1.7-3mz,再将tmake-1.7-3mz卸载,之后执行rpm -Uvh *.rpm命令就不会出现错误。到这,在根目录下的opt文件夹内会生成一个host文件夹,host文件夹中包含了我们所需的交叉编译库。所需的交叉编译环境就基本搭建完成了,如图3.1所示:图3.1交叉编译环境的建立注意事项:交叉编译时到最后make下来发现是cant find Armv41-unknown-linux-gcc 之类的问题,解决方法:首先确定主编译器Armv41-unknown-linux-gcc确实在/opt/host/armv41/bin/下,则:1 用命令vi /root/.bash_profile修改/root/.bash_profile文件,使 PATH变量设为 PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/2 存盘后执行命令:export PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ 3 修改完路径并保存后,然后要执行命令 source /root/.bash_profile4 还有个致命伤:确定armv4l(L)最后那个是字母l(L),不是数字1.、还有注意一下,make以后如果是错误的,想要再make一下的话必须先输入指令make clean.确保能编译成功。4.MiniGui在linux运行环境中的建立:4.1 QVFB的安装:QVFB是QT提供的一个虚拟的FrameBuffer(帧缓冲驱动程序接口)工具,该程序是基于QT开发(QT是LINUX窗口管理器KDE使用的底层函数库),在 X Window环境下,MINIGUI的模拟开发和调试都是基于QVFB来运行的。QVFB的安装过程:将Linux环境下,共享文件目录中qvfb-1.0.tar.gz压缩文件复制到opt目录下。打开终端,进入opt目录(指令:cd /opt),利用指令tar zvfb qvfb-1.0.tar.gz.对其进行解压操作。之后进入qvfb-1.0目录(指令:cd qvfb-1.0)。键入指令./configure生成makefile文件。终端会自动输出,待终端停止输出时,键入指令make和make install,这样就可以将QVFB安装到系统默认的/usr/local/bin/目录下(现在利用终端进入/usr/local/bin应该可以看到一个qvfb文件)。 新建一个终端,键入qvfb &(注意空格)命令可以启动qvfb模拟程序,如图4.1.1所示:图4.1.1启动QVFB模拟程序选择qvfb模拟程序的File选项中configure进行设置:(size:320X240*TV*,Depth:8bit),如图4.1.2所示:图4.1.2 QVFB的程序的设置42 MiniGui相关文件在linux中QVFB下的安装运行:MiniGui相关文件在linux中的安装主要有两部分组成。第一部分是安装MiniGui的资源文件,第二部分是配置安装MiniGui库文件。4.2.1 安装MiniGui的资源文件:先在根目录/opt下新建一个名为emulation文件夹。然后将linux /mnt目录下的共享文件夹中的minigui-res-1.3.3.tar.tar(此文件包含了字体,光标,图标,位图等资源)复制到/opt/emulation。进入/opt/emulation文件夹。键入指令:tar zxvf minigui-res-1.3.3.tar.tar对该压缩包进行解压操作。再进入minigui-1.3.3目录(指令:cd minigui-res-1.3.3),键入make install安装资源文件(指令:make install),这样,资源文件就安装到了/usr/loacal/lib/res目录下。4.2.2 配置与安装MiniGUI库文件:将Linux/mnt共享文件中的libminigui-1.3.3.tar.gz.压缩文件复制到/opt/emulation目录下,进入emulation目录。进行解压(指令:tar zxvf libminigui-1.3.3.tar.gz).进入libiminigui-1.3.3(cd libiminigui-1.3.3),键入指令:make menuconfig进行配置,这个命令将启动图形界面的配置工具,如图4.2.1所示图4.2.1 minigui图形界面的配置工具进入配置选项(在配置界面中,使用空格键选中配置项,使用方向键进行上下选择):(1) 配置系统全局选项:即System wide options 选中“unit of timer is 10ms”,“Cursor surpport”,“User can move the window with mouse”,其他不选。(2) 配置GAL引擎选项,即GAL engine option看开头的是不是NEWGAL,若是,则按回车键进入选项;若为DLDGAL,则改为NEWGAL。选中NEWGAL engine on Qt virtual framebuffer,其他不选。(3) 配置IAL引擎选项,即IAL engine option。选中Native (console)input engine,其他不选。(4) 配置字体选项,即Font options。选中Raw bitmap fonts,其他不选。(5) 配置字符集选项,即Charset options。选中Latin 9(ISO-8859-15,West Extend)charset,GIF file support,JPG file surpport和PNG file support,其他不选。(6) 配置键盘布局选项,即Keyboard layout specific options。各配置项均不配置。(7) 配置图像文件支持选项,即Image options。选中Includes SaveBitamp-related functions,GIF file support,JPG file support和PNG file support,其他不选。(8) 配置输入法选项,即Input method options。选中所有选项。(9) 配置外观选项,即Appearance options。所有选项均不选中。(10) 配置其他选项,即Misc options。选中所有选项。(11) 配置控制选项,即Control options。选中所有选项。(12) 配置扩展库选项,即Ext options。选中前六项和最后一项。(13) 配置开发环境设置选项,即Evelopment environment options.在platform项中选择Linux环境,在Compiler项中环境i386工具。在Libc项中选择glibc库环境。在Path prefix项中设定路径为/usr/local,此为MiniGUI的安装路径。配置完成之后,可以通过选择 Save Configuration to an atlternate File 选项,把本次配置保存到一个自定义的文件中,下次配置可以通过选择Load An Alternate Configuration File选项 把配置文件载入。退出配置环境,此时系统会出现“do you wish to save you new MINIGUI configuration?”提示对话框。选中YES ,之后系统将自动运行一段时间,用来改变到新的配置项和生成相关的makefile文件。等系统停止输出时,键入make命令,对库文件进行重新编译。编译成功后,键入make install命令,将Minigui库安装到默认的/usr/local/lib目录下。 接下来,查看文件/etc/ld.so.conf(指令:vi ld.so.conf)。确保在其内容最后一行中是否有/usr/local/lib,如果没有,进行添加(按i进入编辑模式,添加成功后按ESC进入普通模式,再按:wq进行保存退出)。至此,minigui的仿真环境设置完毕,如图4.2.2所示:图4.2.2在ld.so.conf最后行添加/usr/local/lib4.2.3 在QVFB上显示例样程序:找到linux中共享文件夹中的mg-samples-1.3.1压缩文件,将其复制到/opt/emlation目录下(mg-samples-1.3.1目录下包含了minigui提供了多个示例程序)。然后通过命令tar zxvf mg-samples-1.3.1对其进行解压操作,解压后进入mg-samples-1.3.1文件夹,键入./configure和make命令,可以将这些示例程序编译成可执行程序这些可执行程序能够在Linux纯字符控制台或QVFB上运行 。但是要在QVFB上运行示例程序还需要如下步骤:(1) 按照如下配置修改/usr/local/etc/目录下的配置文件MiniGUI.cfg:【system】gal_engine=fbcon改为gal_engine=qvfbial_engine=console改为ial_engine=qvfb【qvfb】defaultmode=640x480-16bpp:如图4.2.3所示图4.2.3 配置文件Minigui.cfg(2) 进入opt/emulation/mg-samples-1.3.1/src目录执行bmpbkgnd程序(指令./ bmpbkgnd),即可看到在qvfb内的MiniGUI程序,如图4.2.4所示:如图4.2.4 执行bmpbkgnd程序文件5 Linux下FrameBuffer的驱动运行5.1 framebuffer驱动的添加FrameBuffer是出现在linux内核中的一种驱动程序接口。这种接口将显示设备抽象为帧缓冲区。在应用程序中,通过将FrameBuffer设备映射到进程地址空间的方式使用,打开/dev/fb0设备,然后通过mmap系统调用进行地址映射,随后即可对FrameBuffer操作。与framebuffer相关的代码在kernel/drivers/video下,该目录有一个名为S3C2410fb.c的文件,这个文件就是支持S3C2410的framebuffer驱动的源程序,有了这个文件,还需要在编译的时候能将它编译进内核,所以还需要进一步修改。首先将kernel文件复制到创建的目录linux2410下,并对s3c2410fb.c文件进行如下修改:1) 进入kernel/drivers/video/Config.in文件内,在该文件中“dep_tristates3c2410 LCD supportCONFIG_FB_S3C2410 $CONFIG_ARCH_S3C2410”下面添加:dep_bool320*240 8bit color STN LCD supportCONFIG_FB_s3c2410_320x240x8 $CONFIG_FB_S3C2410表示配置了CONFIG_ARCH_S3C2410,可以选择S3C2410的Framebuffer支持。如图5.1.1所示:图5.1.1 Config.in文件修改2) kernel/drivers/video/Makefile在该文件的“obj -$ (CONFIG_FB_GAMEPARK_FSTN)+=s6b7024fb. o fbgen. o”后添加:Obj -$ (CONFIG_FB_S3C2410) += s3c2410fb.o表示将S3C2410 Framebuffer的驱动程序加入Lniux内核。如图5.1.2所示:图5.1.2 Makefile 文件修改3) kernel/drivers/video/fbmem.c在该文件开始部分,添加调用的函数声明:extern int S3c2410fb_int (void);extern int S3c2410fb_setup(char*);之后,在合适的地方添加S3C2410fb驱动入口:#ifdef CONFIG_FB_S3C2410“S3C2410fb”,S3C2410fb_int, S3C2410fb_setup,#endif如图5.1.3所示:图5.1.3fbmem.c文件修改5.2 Framebuffer设备文件的添加应用程序使用framebuffer驱动程序是通过设备文件来进行的,所以必须在文件系统中创建framebuffer相应的设备文件,才能让应用程序使用framebuffer驱动。由于设备文件使用了设备文件系统,因此,可以不必考虑其主次设备号,只需要考虑驱动程序调用的是设备fb0即可,但又因为设备文件系统生成的设备文件为fb/0,所以需要在文件系统中作一个符号连接,也就是当找到fb/0时,直接连接到fb0。这个文件系统的/usr/etc/rc.local文件中,即添加ln s fb/0 fb0一行即可,如图5.2.1所示。至此,Framebuffer代码添加完毕。图5.2.1 rc.local文件修改5.3 Framebuffer程序测试在实验程序/linux/lcddriver/wrtframbuffer目录中可以看到framebuffer测试程序write.c文件,编译通过后,生成了二进制write文件,若存在write文件可不必编译,此时,可以他放入共享文件/home/nfs目录下。5.3.1 NFS网络文件系统的配置 1. 在 linux超级终端上执行命令setup(如图5-1-1(a),在界面中选择Firewall configuration,回车,进入系统服务选项菜单,选择NO FIREWALL 关闭防火墙。然后推出,但是,setup里面会照样显示防火墙设置是HIGH,这个可以不必理会。之后选中:System services,回车,进入系统服务选项菜单,在其中选中*nfs,(图5-1-1(b))其表示开机自启动,然后按F12退出,然后返回命令提示符下。 5-1-1(a) setup执行界面 5-1-1(b) nfs 选择界面 2.利用编辑器打开/etc/exports文件(即利用命令vi /etc/exports来打开此文件),将这个默认的空文件修改为只有如下一行内容(如图5-1-2),保存退出。 5-1-2 exports 修改3然后改变目录到/etc/rc.d/init.d/下,执行如下命令:/nfs start,即有终端内输出。如图5-1-3,即主机linux下的NFS启动起来了。 5-1-3 终端输出NFS启动5.3.2 用交叉网线把主机和实验系统连接:在Lniux终端下输入minicom s,弹出配置界面,配置minicom如图5.3.3所示:图5.3.3 配置minicom 之后,在minicom下,给系统上电,系统启动后,利用ifconfig eth0 改变实验系统的IP地址。新建终端,通过ifconfig eth0 配置Linux 地址。配置主机为2,即window环境下改变网络连接的Internet协议属性。再依次输入如下指令:ping 和ping 2及ping 。连接实验箱和主机,按ctrl+z退出。如图5.3.4 所示:、图5.3.4 连接实验箱与主机如果Ping通后,利用mount指令挂载主机的nfs系统的共享文件。成功后,利用命令chmod 777 /home/nfs改变/home/nfs文件夹的属性,让其可读可写可执行。在Linux终端下输入mount o nolock :/home/nfs /mmt/yaffs回车,完成把主机上的/home/nfs下的文件挂载到实验系统的/mmt/yaffs目录下,如图5.3.5所示。图5.3.5 挂载共享文件5.3.3 利用网络烧写软件imagewrite烧写大系统内核和bigroot文件系统将实验软件/tools内的imagewrite文件放到/home/nfs目录下。同时将vivi文件及大系统的内核文件zImage、bigroot文件系统放到该目录下。分别执行下面的命令:/mnt/yaffs # ./imagewrite /dev/mtd/0 vivi:0 /mnt/yaffs # ./imagewrite /dev/mtd/0 zImage:192k/mnt/yaffs # ./imagewrite /dev/mtd/0 bigroot:2m利用imagewrite烧写软件烧写vivi、zImage及bigroot。如图5.3.6所示:图5.3.6 烧写vivi、zImage、bigroot改变目录到/usr/sbin/,输入./write,即可在实验箱LCD上间隔相等的多种颜色条纹图案,如图5.3.7所示:图5.3.7 执行可执行程序write后在LCD上显示6、MiniGui在S3C2410上的移植6.1安装MiniGUI的资源文件由于我们要在LCD上显示JPG图片文件,minigui1.3.3的库不支持JPG文件,若要显示要下载安装其他的库文件,因此我们移植了minigui1.6.10。将MiniGUI资源文件(minigui-res-1.6.10.tar.gz)放到目录/home/nfs/minigui下,解压缩。在该目录下新建文件夹miniguitmp用来存放minigui资源文件。在编辑器中打开/home/nfs/minigui/minigui-res-1.6.10目录下的config.linux文件,编辑第11行TOPDIR=/home/nfs/minigui/miniguitmp 如图6.1所示。图6.1 config.linux文件修改保存退出后,进去minigui-res-1.6.10目录rootlocalhost minigui# cd minigui-res-1.6.10通过make install 安装资源文件rootlocalhost minigui-res-1.6.10# make install则资源被安装在/home/nfs/minigui/miniguitmp/usr/local/lib/minigui/res下。6.2配置与安装MiniGUI的库文件将MiniGUI库文件(libminigui-1.6.10.tar.gz)放到目录/home/nfs/minigui下,解压缩。修改configure文件,在文件的开头加入交叉编译的路径,如图6.2.1所示:图6.2.1修改configure文件然后在/libminigui-1.6.10目录下建立bash文件mysetup.sh如图6.2.2所示,执行命令./mysetup.sh,图6.2.2建立bash文件mysetup.sh成功后执行rootlocalhost libminigui-1.6.10# make如果输出没有错误,执行rootlocalhost libminigui-1.6.10# make install执行make install的时候会吧编译以后的资源安装在/home/nfs/minigui/miniguitmp中。至此libminigui的交叉编译工作完成。修改/home/nfs/minigui/miniguitep/etc/MiniGUI.cfg文件,如图6.2.3所示:图6.2.3 修改MiniGUI.cfg文件将修改好的MiniGUI.cfg文件放到/root_tech0/mnt/etc目录下。6.3 交叉编译mg-samples-1.6.10中的示例文件将MiniGUI示例文件(mg-samples-1.6.10.tar.gz)放到目录/home/nfs/minigui下,解压缩。进去该目录,执行交叉编译命令:rootlocalhost mg-samples-1.6.10#./configure -target=arm -host=i686 CC=/opt/host/armv4l/bin/armv4l-unknown-linux-gcc CFLAGS=-I/home/nfs/minigui/miniguitmp/include LDFLAGS=-L/home/nfs/minigui/miniguitmp/lib此时把mg-samples-1.6.10文件夹中的所有示例程序都交叉编译。6.4 root文件的生成及NFS的配置与启动6.4.1 root文件的生成: 通过上面的工作我们已经把minigui的资源文件、minigui库文件以及minigui的配置文件放到了root制作文件的目录下。但是现在的root_tech0文件很大,而将minigui库文件libminigui-1.6.so.10.0.0等文件进行冗余信息剥离会导致库文件出错。我们删除部分文件如qt文件。 然后执行命令rootlocalhost linux2410# ./mkcramfs root_tech0 miniguiroot 生成根文件系统。将生成的根文件系统miniguiroot放入/home/nfs中。6.4.2 Linux下NFS的配置及启动:首先在Linux终端下执行setup,弹出菜单界面后,选中firewall configuration,回车,进入系统服务选项菜单,选择NO FIREWALL关闭防火墙,退出,之后选中Systemservices,回车,进入系统服务选项菜单,选择其中的【*】nfs,按F12键退出,选择方向键,退出setup界面,返回命令提示符下。用vi打开/etc/exports文件,加入一行内容:/ (rw) (注意中间有空格)保存退出,如图6.4.1所示。图 6.4.1 export文件然后改变目录到/etc/rc.d/init.d/下,执行命令./nfs start开启NFS服务,出现如图6.4.2所示,则说明NFS服务已经开启。图6.4.2 NFS配置成功6.4.3 用交叉网线把主机和实验系统连接:在Lniux终端下输入minicom s,弹出配置界面,配置minicom如图6.4.3所示:图6.4.3 配置minicom 之后,在minicom下,给系统上电,系统启动后,利用ifconfig eth0 改变实验系统的IP地址。新建终端,通过ifconfig eth0 配置Linux 地址。配置主机为2,即window环境下改变网络连接的Internet协议属性。再依次输入如下指令:ping 和ping 2及ping 。连接实验箱和主机,按ctrl+z退出。如图6.4.4 图6.4.4 连接实验箱与主机如果Ping通后,利用mount指令挂载主机的nfs系统的共享文件。成功后,利用命令chmod 777 /
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电表改装课件
- 车辆保险服务投标方案
- 电脑知识培训计划课件
- 输电线路巡检技术服务合同
- 电脑培训知识点总结
- sis考试试题及答案
- pqc考试试题及答案
- 电缆业务知识培训课件
- 第7章 消费者的需要与购买动机
- 高级餐厅基础知识培训内容
- 派驻国外员工管理制度
- 2025-2030中国车身控制器行业市场现状分析及竞争格局与投资发展研究报告
- 苏州大学介绍
- 2025广西中考:政治必背知识点
- 粉尘涉爆安全培训
- 新常态下的中国消费-麦肯锡
- 水淹车培训课件
- 液压与气压传动技术 第四版 习题参考答案 徐钢涛 -00绪论-08气压传动
- 2024-2030全球内部人才市场行业调研及趋势分析报告
- 酒店楼层分租协议书
- 单位对个人教育教学情况定性综合分析
评论
0/150
提交评论