注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

deisp的博客

 
 
 

日志

 
 

minigui-1.3.3及其示例程序编译的详细过程。 - 相濡以沫 - CSDNBlog  

2008-07-23 22:38:36|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

在开始介绍minigui的编译过程之前,先给出两个对本文档的说明首先,本文档介绍的是交叉编译minigui,因此所编译出来的所有可执行文件都只能在目标板上运行,试图在编译后直接运行是得不到任何结果的,而且还会提示说不是可执行文件(elf)其次,文档中的linux命令都采用灰色背景跟其他文字区分开来命令中的的第一个字母>表示用户console窗口中的命令提示符,具体操作的时候请不要输入该字符


一编译华恒科技移植好的minigui-1.3.3库及其测试程序

执行了HHARMMX21附带的光盘中的arminst后会创建好/HHARMMX21目录,其中minigui位于/HHARMMX21/applications/minigui-free/目录下该目录下的HHTECH.readme是编译华恒科技移植好的minigui的过程说明

执行HHTECH.readme中的前四个步骤(如下):

Step 1:

cd /HHARMMX21/applications/minigui-free/libminigui-1.3.3

./HHTECH.inst.lib

Step 2:

cd /HHARMMX21/applications/minigui-free/mg-samples-1.3.1/

./HHTECH.compile.mg

Step 3:

cd /HHARMMX21/applications/minigui-free/minigui-res-1.3.3/

./HHTECH.insti

Step 4:

/HHARMMX21/applications/minigui-free/nfsroot

./HHTECH.reduce.lib

执行完这四步以后,minigui库已经编译和安装好了但是mg-samples中的示例程序都是些演示某个单一控件的使用方法的小程序使用minigui来开发的复杂一点的程序都在mde中而华恒科技提供的说明文档中并未提到这一点根据分析,华恒科技提供的mde无法直接编译通过,估计就是因为这样华恒科技才没有在HHTECH.readme中给出mde的编译过程下面是我根据网络资料和对mde进行分析后实践出来的mde编译过程

二编译mde-1.3.0

mde的编译需要用到 popt库,因此我们需要先下载和编译popt库我已经将libpopt库上传到实验室内部网站了,在上传下载中可以找到,文件名为popt_1.10.orig.tar.gz

libpopt的编译比较简单,关键在于使用正确的交叉编译工具

tar xvzf popt_1.10.orig.tar.gz

cd popt

>CC=/opt/host/armv4l/bin/armv4l-unknown-linux-gcc ./configure --build=i686-pc-linux-gnu --host=arm-unknown-linux --prefix=/HHARMMX21/applications/minigui-free/nfsroot/ --target=arm-unknown-linux

>make

>make install

这里有两个地方容易出现问题:一是权限问题Linux下对文件的权限有很严格的设定,因此可能会出现用户没有访问或者建立目录的权限导致无法解压缩或者是没有权限读写 /HHARMMX21/applications/minigui-free/nfsroot而导致make install出错另一个是交叉编译工具链的设置问题,需要通过CC=/opt/host/armv4l/bin/armv4l-unknown-linux-gcc命令来指向正确的交叉编译工具链这里我是通过分析mg-samples-1.3.1的Makefile文件而得到交叉编译工具链的名称和位置的

如果上面命令执行无误,则/HHARMMX21/applications/minigui-free/nfsroot/lib/下有libpopt.a,libpopt.la,libpopt.so,libpopt.so.0,libpopt.so.0.0.0等几个文件,在/HHARMMX21/applications/minigui-free/nfsroot/include/下有popt.h文件

编译mde-1.3.0

华恒科技提供的HHARMMX21附带光盘中的mde-1.3.0文件有问题,估计是其开发人员没能解决popt库的问题,所以想通过修改mde-1.3.0下的tools目录下的vcongui.c文件来屏蔽对popt库的调用,结果没有成功,却忘了恢复对mde-1.3.0源代码的修改因此我们需要编辑vcongui.c文件来去掉对#include <popt.h>的注释

cd /HHARMMX21/applications/minigui-free/mde-1.3.0/tools/

gedit vcongui.c

//#include <popt.h>

改为

#include <popt.h>

也就是去掉对#include <popt.h>的注释然后回到mde-1.3.0目录下,执行./HHTECH.compile.mg编译mde.

cd /HHARMMX21/applications/minigui-free/mde-1.3.0/

./HHTECH.compile.mg

如果执行无误则成功编译了mde-1.3.0,这时可以去bomb,notebook等目录下看一下,应该已经生成了程序的可执行文件其中mde-1.3.0下的bomb目录包含的是一个扫地雷游戏,挺好玩的

请别忘了,所有交叉编译出来的程序必须到目标板上才能运行,也就是只能通过MAINet手持终端才能执行,在自己的电脑上是无法执行和查看效果的

博客广告新思路!在你的博客里放置广告!我挂广告了效果如下面所示!免费注册拥有财富!
注册地址

评论:没有评论
发表评论请输入评论





引文来源  minigui-1.3.3及其示例程序编译的详细过程 - 相濡以沫 - CSDNBlog

----------------------------
一键转贴,快速捕捉生活精彩,赢每周好礼!查看活动首页>>

  评论这张
 
阅读(297)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017