现在的位置: 首页 > 综合 > 正文

写qtopia应用的一点心得(zz)

2013年01月21日 ⁄ 综合 ⁄ 共 2109字 ⁄ 字号 评论关闭

最近一直在弄那个qtopia.添加应用程序,我因为要在本地编译一下.才能再一直到板子上.因为我们不可能一上来就烧到板子上.我想谁也不会用这样的办法的,我的本地编译是通过啦,具体的过程为有一篇qtopia文章,里面有详细的介绍,当我在本地编译的时候,出来了结果,我很高兴,并且把我的应用程序加上去了,具体怎么加上去的可以见我上一篇文章,里面很详细,但是我高兴的太早了,为什么呢?因为我在关机的时候,第二天再运行的时候,出现了很大的问题,当我运行

#./qvfb & //后台运行
#./qpe &

的时候,运行./qvfb &时候,正常.但是运行 ./qpe & 的时候有问题啦.报出来的错误为

Can't open framebuffer device /dev/fb0
Transformed driver cannot connect

我就很郁闷啦.为什么会出现这样的问题呢?我用baidu 了很久还是找不到答案.一直找不到答案,我就想,是不是我编译的时候出现了问题,还是少加入了什么参数呢???但是我编译了好几遍,可是得到的结果是怎么也运行不了 ./qpe 啦,报的错误是相同的,直到昨天我在www.qtcn.org上面看到了一文章.跟我出现的问题是相同的,并且人家已经解决啦,我才找到答案,谁会知道是要删除 /root/seeting/qpe.conf, 我当时只知道在运行的时候是会在/root下面生成一些文件.但是没有想到会关联起来,并且还要删除,主要还是没有当时没有明白为什么会生成的原因,这是关键,所以一直在找我编译qtopia的配置问题,还有就是找可能是不是我的电脑配置或者安装linux的时候是不是有问题.我当时想既然能运行一次,那为什么重新启动不行,配置应该没有问题,那就是后来的问题啦.所以我们不管在编译什么地时候一定要理解它的原理,还要理解它生成后的工作原理,

下面还有一些其他的解决办法,我也把它罗列出来,如下,

(引用一下别人:)
" 其实问题出在qpe.conf这个文件,里面的变量发生了变化.
有两中方法解决:
1.在qvfb之前加上一句export QWS_DISPLAY=QVFb:0;
2.如果上述方法不行,哪只能从你的备份中把/root/Settings的qpe.conf替换,
最坏的是重新在来一边! "

我将qpe.conf 给rm 了
呵呵,你有没有解决?

2下面也许你要自己动手写一个简单的程序, 我是这样, 一厢情愿的以为所有的问题都没有了,哈哈,

如果你写的代码没有问题, 但是编译的时候却出错了, 如果你的错误类似下面:
main.cpp:2:35: qtopia/qpeapplication.h: No such file or directory
main.cpp: In function `int main(int, char**)':
main.cpp:6: `QPEApplication' undeclared (first use this function)
main.cpp:6: (Each undeclared identifier is reported only once for each function
it appears in.)
main.cpp:6: parse error before `(' token
main.cpp:9: `a' undeclared (first use this function)
main.cpp:5: warning: unused parameter `int argc'
main.cpp:5: warning: unused parameter `char**argv'
make: *** [.obj/linux-generic-g++//main.o] Error 1

有开始google,baidu,不是很顺利,但是最终还是给我找到了方法:
回到我的/root/qtopia/qtopia_1.6_install下,
回到我的/root/qtopia/qtopia_1.6_install下,
运行ldconfig,使生成的qt和qtopia库有效,运行一次即可, 而我在前面编译的过程中没有这个过程。

当然,在这之前你应该修改一下你的/etc/ld.so.conf
"为了在PC上模拟运行Qtopia,需要用到对应Qt版本的库文件,因此需要修改/etc/ld.so.conf文件以适应刚刚安装的Qt"

在试验一次,问题解决了吗 ?

到这里, 我建议你去编译一下qtopia带的example .路径是qtopia-free-1.6.0/examples/
有 一个application,文件名就叫example
开始编译:
#tmake -o Makefile example.pro
#make

#qvfb &
#./example -qws
怎么样?

好了,我目前只做到这里了,经验还不是很多, 都贴出来了
如果你还有什么问题, 看看这个:http://www.arm9.net/sbc-2410x_howto_qtopia_install.asp 为了大家学习交流贴出这个网址, 如果你打开的是乱码 ,想想办法吧. 呵呵

大家有什么经验.心得,希望可以贴出来分享! 如果上面有什么不对的地方, 请回复告诉我, 谢谢了, 不能让错误的东西误导别人!

 

 

抱歉!评论已关闭.