miniGui移植

项目需要,要对miniGui开源版本1.3.3进行嵌入式移植,主机Ubuntu12.04.宿主ARM开发板。

1. 目前相关网站好像无法下载到miniGui源代码,不知道是个别情况还是今天网络有问题。信号本来在自己的电脑上找到了源代码(应该是以前下载下来留着有用)。

2. 将源代码解压到工作目录,cd进入miniGui目录后,按照网络的配置命令进行配置,没有遇到任何问题。(./configure --prefix=/home/ --host=arm-linux --target=arm-linux --build=i386-linux CC=arm-linux-gcc --with-osname=linux --with-style=classic  --with-targetname=fbcon --enable-autoial --enable-commial --enable-rbf16 --disable-vbfsupport)。

3. 直接make,其中遇到2个问题:

fbvideo.c:19:63: error: asm/page.h: No such file or directory
fbvideo.c: In function 'FB_VideoInit':
fbvideo.c:368: error: 'PAGE_SIZE' undeclared (first use in this function)

a 报错<arm/page.h>找不到,所以page_size未定义。网上有人说是因为高内核版本已经没有这个头文件了,所以有2种解决办法。

     1)找到老内核,拷贝page.h(本人采用)。

     2) 包含 <unistd.h> 头文件,将 PAGE_SIZE 宏替代成 getpagesize() 函数调用(本人没试过)。


grid.c: In function 'AddCol':
grid.c:626: error: invalid lvalue in assignment
grid.c:627: error: invalid lvalue in assignment
grid.c:640: error: invalid lvalue in assignment
grid.c:641: error: invalid lvalue in assignment
grid.c:669: error: invalid lvalue in assignment
grid.c:670: error: invalid lvalue in assignment
grid.c:682: error: invalid lvalue in assignment
grid.c:683: error: invalid lvalue in assignment
grid.c: In function 'AddRow':
grid.c:735: error: invalid lvalue in assignment
grid.c:736: error: invalid lvalue in assignment
grid.c:747: error: invalid lvalue in assignment
grid.c:748: error: invalid lvalue in assignment
grid.c:776: error: invalid lvalue in assignment
grid.c:777: error: invalid lvalue in assignment
grid.c:790: error: invalid lvalue in assignment
grid.c:791: error: invalid lvalue in assignment


b 原因可能编译器版本太高,类似“(PGRIDCOLHDR)pCell3->pColHdr = pColHdr”这样的强制转换编译通不过,于是去掉强制转换改为“pCell3->pColHdr = pColHdr”就可以。

4.运气非常好,编译过程中就遇到这2个问题。

5.最后make install将目标结果安装在了我们指定的地方(前面prefix=home设定的目录)

6.我的home目录里有了开发和运行需要的头文件和库(etc,include,lib3个目录)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值