配置minigui开发环境

根据该文件中的 minigui移植.pdf中的 路径设置均与手册一致  我的第一步是安装libminigui-1.6.10
第二安装zlib库 其中gcc偷梁换柱时要相当小心 记得要检测gcc是否换回
第三装png库
第三 装jpg库 ./configure 时出现以下错误:
checking build systermtype ..configure:error:cannot guess build type;you must specing one
表示不能测试系统环境与libtool的confing.guess脚本文件有关可将/usr/share/misc/ 下的 config.guess,config.sub拷贝过去就行了
解决方案:
把 /usr/share/libtool/config.guess 覆盖到相关软件自带的config.guess
把 /usr/share/libtool/config.sub 覆盖到相关软件自带的config.sub

checking host system type... i686-pc-linux-gnu
http://linux.chinaunix.net/bbs/thread-1044471-1-1.html
第四 装libttf库
第五 装libminigui库
第六 利用arm-linux-gcc 编译 arm-linux-gcc -I/usr/local/arm/4.3.2/arm-linux/include -L/usr/local/arm/4.3.2/arm-linux/lib -O2 -o edit edit.c -lminigui -lmgext -lm -ljpeg -lpthread -lpng -lz
第七 部署图形库
第八 当将用arm-gcc编译的二进制代码放到ARM中运行时若出现NEWGAL:Set video mode failure . InitGUI:can not initialize graphics engine!
NEWGAL>FBCON:Couldn't set console screen info
看到上面的screen就能体会到 可能是fbcon的分辨率的设置的问题
在/opt/FriendlyARM/mini2440/root_qtopia/usr/local/etc的Minigui.cfg修改[fbcon]
defaultmode=240x320-16bpp(根据具体情况)
第九 根文件系统打包
 
问题一:arm-linux-gcc -o helloworld helloworld.c -L/usr/local/arm/4.3.2/arm-linux/lib -I/usr/local/arm/4.3.2/arm-linux/include -lpng -lminigui -lz -lpthread -ljpeg
/usr/local/arm/4.3.2/arm-linux/lib/libminigui.so: undefined reference to `__comminput_deinit'
/usr/local/arm/4.3.2/arm-linux/lib/libminigui.so: undefined reference to `__comminput_kb_getdata'
/usr/local/arm/4.3.2/arm-linux/lib/libminigui.so: undefined reference to `__comminput_ts_getdata'
/usr/local/arm/4.3.2/arm-linux/lib/libminigui.so: undefined reference to `__comminput_init'
/usr/local/arm/4.3.2/arm-linux/lib/libminigui.so: undefined reference to `__comminput_wait_for_input'
collect2: ld returned 1 exit status
make: *** [helloworld] 错误 1

解决:./configure --host=arm-linux --prefix=/home/phil/tmp  --target=arm-linux  --build=i386-linux --with-osname=linux  --with-style=fashion --enable-ttfsupport --enable-extctrlgridview --with-targetname=fbcon --enable-autoial --enable-rbf16 --disable-vbfsuport  CC=arm-linux-gcc
(交叉编译libminigui的./configure)



问题二:http://www.fmsoft.cn/forum/viewtopic.php?f=8&t=4308&view=next
[root@localhost src]# ./helloworld
GDI: Error in loading raw bitmap fonts!
GDI: Can not initialize raw bitmap fonts!
DESKTOP: Initialization of GDI failure!

解决:cp /usr/local/lib/minigui/res
/root/minigui/arm/root_default/usr/local/lib/minigui –r

SQilte移植:
1.安装数据库(PC)
apt-get install Sqlite
apt-get install libsqlite3-dev

2.sqlite-3.7.0
./configure --host=arm-linux  --prefix=/usr/local/arm/Sqlite(新建一个)
make
make install
(将目录下的bin、include和lib拷贝到root_default下的相应目录,至此数据库在开发板移植完毕)

3.触摸屏(支持触摸屏的minigui库文件,拿此命令生成对应东西)
./configure --host=arm-linux --prefix=/home/phil/tmp  --target=arm-linux  --build=i386-linux --with-osname=linux  --with-style=fashion --enable-ttfsupport --enable-extctrlgridview --with-targetname=fbcon --enable-autoial --enable-rbf16 --disable-vbfsuport --enable-imegb2312  --enable-imegb2312py CC=arm-linux-gcc CFLAGS="-lts"

http://www.arm9home.net/read.php?tid-7323.html
http://www.arm9home.net/read.php?tid-7368.html ubuntu 下cutecom显示出额外的东西
http://www.arm9home.net/read.php?tid-7445.html   s3c2410_ts.c触摸屏驱动的gpio配置疑问
http://www.arm9home.net/read.php?tid-7489.html ubuntu 10.04下还是打不开arm9home论坛网站
http://www.arm9home.net/read.php?tid-7526.html  让sqlite在mini2440上支持上下键回看历史记录
http://www.arm9home.net/read.php?tid-8432.html 小分析->minigui+tslib的触摸屏输入引擎毛病

http://www.arm9home.net/read.php?tid-11074.html   linux-2.6.38内核移植的经验和疑惑
http://www.arm9home.net/read.php?tid-11629.html  改进minigui1.3.3的输入法窗口,增加虚拟键盘
http://blog.tianya.cn/blogger/post_show.asp?BlogID=2058037&PostID=17515888(参照这到了第七步,不过好像要把什么拷贝到开发板里)


4.cutocom从nfs启动linux
/root/minigui/arm/root_default *(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) 这是/etc/exports中的共享目录

param set linux_cmd_line "console=ttySAC0 root=/dev/nfs nfsroot=10.88.12.100:/root/minigui/arm/root_default ip=10.88.12.102:10.88.12.100:10.88.12.65:255.255.255.192:sbc2440.arm9.net:eth0:off"

PC机信息
IP地址:10.88.12.100
掩码:255.255.255.192
默认路由:10.88.12.65

5.
CROSS_PATH=/usr/local/arm/4.3.2/arm-linux
#c_flag= -lminigui -ljpeg -lpng -lz -lpthread -lsqlite3 -lmgext -lts(lts为支持触摸屏的库)
c_flag=-L$(CROSS_PATH)/lib -I$(CROSS_PATH)/include -lminigui -ljpeg -lpng -lz -lpthread -lsqlite3 -lmgext


6.minigui的移植虽说照着手册搞的,可以变通一下。
触摸屏的移植(arm项目\minigui\支持触摸屏的minigui库文件\libminigui-1.6.10)

7.开发板的系统和PC机root_default的目录是一样的,切记。。

8.  ./autogen.sh: 4: autoreconf: not found
  是在不同版本的 tslib 下执行 autogen.sh 产生。它们产生的原因一样,是
因为没有安装
  automake 工具,      (ubuntu 8.04)用下面的命令安装好就可以了。
  sudo apt-get install autoconf automake libtool
 
9.
Q1:在交叉编译TSLIB的时候出现了libtool:link: only absolute run-paths are allowed错误

解决方法:要修改/tslib/plugins/Makefile里面找rpath,找到将其注释并加上绝对路径。
找到:LDFLAGS :=$(LDFLAGS) -rpath $(PLUGIN_DIR)
修改为:
LDFLAGS :=$(LDFLAGS) -rpath `cd $(PLUGIN_DIR) && pwd`

10
no raw modules loaded
原因:是你的ts.conf中没有指定module_raw,自带的ts.conf的所有module_raw都被注释掉了

解决办法:
你应该打开至少一个module_raw选项,有人就选择了input,去掉了它的注释
得到module_raw input

另一个原因就是你没有正确配置TSLIB_PLUGINDIR,tslib从你指定的目录中没有找到plugin需要的模块文件,
请检查你的路径和文件。


19.
如果你不需要发布到市场里,只是要安装到自己手机里的话,很简单:首先确认你的工程编译好了(Eclipse一般都是自动编译,如果不自动,你按ctrl+B),然后找到你的工程目录点击进去,找到bin文件夹,里面有一个扩展名为apk的文件,你可以放到手机里去安装了,要注意的一点是你要确保 手机里 设置-->应用程序-->未知源 这个是勾选的





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

blemesh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值