转:http://blog.csdn.net/xuehui869/article/details/8958311

运行主机:ubuntu 32位 11.04
QT版本:2.2.0
开发板:TQ2440
源码安装路径(修改相关脚本x86-qtopia-2.2.0_build等,摈弃了解压缩后的文件都放在/opt/EmbedSky/Qte的问题):/opt/newSSD/tq2440/source/Qte
GCC版本:3.4.4

说明:鉴于网上的讨论-------------------ubuntu11.04自带的gcc4.5.2编译Qt2.2.0会出现很多问题,所以把GCC的版本降低,出现的错误大大减少。参考文献:http://jinsuo2007.blog.163.com/blog/static/1922799520104137259556/

1. 安装GCC(包含G++)3.4.4
安装方法参考《ubuntu10.4系统下GCC降级安装》

下载地址http://mirror.bjtu.edu.cn/gnu/gcc/gcc-3.4.4/

先解压
$ ./configure --prefix=/opt/newSSD/tq2440/compile/gcc-3.4.4/ --mandir=/opt/newSSD/tq2440/compile/gcc-3.4.4/share/man --infodir=/opt/newSSD/tq2440/compile/gcc-3.4.4/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --enable-languages=c,c++
$ make && make install

2.  编译错误

错误:asm/page.h:没有那个文件或目录 In file included from kernel/qgfx_qws.h:39,

解决办法:
http://tensing.blog.sohu.com/114887954.html

从linux2.6.25.8拷贝出linux-2.6.25.8/include/asm-x86/page.h放在/usr/include/asm目录下即可

3.  编译出现错误:

/usr/bin/ld: cannot find -luuid
/usr/bin/ld: cannot find -lqte
collect2: ld 返回 1
make[5]: *** [../../../lib/libqpe.so.1.5.3] 错误 1
make[5]:正在离开目录 `/opt/newSSD/tq2440/source/Qte/x86-qtopia-2.2.0/qtopia/src/libraries/qtopia'
make[4]: *** [all] 错误 2
make[4]:正在离开目录 `/opt/newSSD/tq2440/source/Qte/x86-qtopia-2.2.0/qtopia/src/libraries/qtopia'
make[3]: *** [sub-libraries-qtopia] 错误 2
make[3]:正在离开目录 `/opt/newSSD/tq2440/source/Qte/x86-qtopia-2.2.0/qtopia/src'
make[2]: *** [all] 错误 2
make[2]:正在离开目录 `/opt/newSSD/tq2440/source/Qte/x86-qtopia-2.2.0/qtopia/src'
make[1]: *** [all] 错误 2
make[1]:正在离开目录 `/opt/newSSD/tq2440/source/Qte/x86-qtopia-2.2.0/qtopia'

解决方法:http://blog.csdn.net/mimicock1234/article/details/7402453
$locate libuuid
/lib/i386-linux-gnu/libuuid.so.1
/lib/i386-linux-gnu/libuuid.so.1.3.0
$ln -sf /lib/i386-linux-gnu/libuuid.so.1.3.0 /usr/lib/libuuid.so

4.  错误
/usr/lib/libGLU.so: undefined reference to `operator delete(void*)@GLIBCXX_3.4'
/usr/lib/libGLU.so: undefined reference to `vtable for __cxxabiv1::__si_class_type_info@CXXABI_1.3'
/usr/lib/libGLU.so: undefined reference to `__gxx_personality_v0@CXXABI_1.3'
/usr/lib/libGLU.so: undefined reference to `operator delete[](void*)@GLIBCXX_3.4'
/usr/lib/libGLU.so: undefined reference to `operator new(unsigned int)@GLIBCXX_3.4'
/usr/lib/libGLU.so: undefined reference to `vtable for __cxxabiv1::__vmi_class_type_info@CXXABI_1.3'
/usr/lib/libGLU.so: undefined reference to `__cxa_pure_virtual@CXXABI_1.3'
/usr/lib/libGLU.so: undefined reference to `vtable for __cxxabiv1::__class_type_info@CXXABI_1.3'
/usr/lib/libGLU.so: undefined reference to `operator new[](unsigned int)@GLIBCXX_3.4'
collect2: ld 返回 1
make[1]: *** [../../../bin/lrelease] 错误 1
make[1]:正在离开目录 `/opt/newSSD/tq2440/source/Qte/x86-qtopia-2.2.0/dqt/tools/linguist/lrelease'

-----------------------这个问题不影响编译

5.
videocaptureview.cpp:54:28: linux/videodev.h:没有那个文件或目录
videocaptureview.cpp:90: 错误: field `caps' has incomplete type
videocaptureview.cpp:91: 错误: field `mbuf' has incomplete type
解决办法:
http://blog.csdn.net/r91987/article/details/6849730

$apt-get install libv4l-dev
$ vi x86-qtopia-2.2.0/qtopia/src/applications/camera/videocaptureview.cpp
#include <linux/videodev.h>
替换为
#include <libv4l1-videodev.h>

6.
opt/EmbedSky/Qte/pro/build
mv: 无法获取"pro" 的文件状态(stat): 没有那个文件或目录
Build user program , please wait ...
 
./x86-qtopia-2.2.0_build: 第 45 行: cd: x86-qtopia-2.2.0/pro: 没有那个文件或目录
./x86-qtopia-2.2.0_build: 行 46: ./build: 没有那个文件或目录

解决办法:
发现原因是x86-qtopia-2.2.0_build脚本里的解压路径不对,改正即可。

------------------------------以下,Qt就可以运行了。
7.
qpe运行时
qpe: error while loading shared libraries: libqtopia2.so.2: cannot open shared object file: No such file or directory。。。。。

http://blog.csdn.net/chenah/article/details/5216308

解决办法:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/EmbedSky/Qte/x86-qtopia-2.2.0/qtopia/lib

ubuntu11.04编译TQ2440 Qt2.2.0 成功的更多相关文章

  1. ubuntu14.04 编译安装gcc-5.3.0

    最近编译个源码,要求对C++14的支持了,就GCC的编译安装最新的5.3.0,整个过程以root用户进行. 1.下载GCC源码,属于事后文档整理,已经不知道从哪下载了. 2.解压:tar -zxvf ...

  2. Ubuntu 14.04 编译newLISP 10.6.0

    1. 确保安装了gcc4.8.2 2. 安装须要的库: apt-get install libreadline6 libreadline6-dev 3. 下载并解压newLISP源码,这个不多说了,去 ...

  3. ubuntu11.04编译gm8180的ffmpeg

    1.1 About this documentThe ffmpeg is a open source package that provides video application for gener ...

  4. ubuntu11.04 编译ffmpeg2.7 并生成 ffplay进行流媒体測试

    源代码安装方式: 1. 先下载ffmpeg 安装包 到官网上 http://ffmpeg.org/download.html#releases 下载.选择Download gzip tarball. ...

  5. Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决

    昨晚在编译源码,make一段时间之后报错如下: # A fatal error has been detected by the Java Runtime Environment: # # SIGSE ...

  6. Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)

    Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python) 前提是已经安装了python2,python3 1)安装各种依赖库 sudo apt-get update ...

  7. 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)

    写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...

  8. PHP7 学习笔记(一)Ubuntu 16.04 编译安装Nginx-1.10.3、 PHP7.0.9、Redis3.0 扩展、Phalcon3.1 扩展、Swoole1.9.8 扩展、ssh2扩展(全程编译安装)

    ==================== PHP 7.0 编译安装================== wget http://cn2.php.net/get/php-7.0.9.tar.bz2/fr ...

  9. [笔记] Ubuntu 18.04源码编译安装OpenCV 4.0流程

    标准常规安装方法安装的OpenCV版本比较低,想尝鲜使用4.0版本,只好源码安装. 安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 1080 CUDA:10.0 c ...

随机推荐

  1. POJ 3164 Command Network (最小树形图)

    [题目链接]http://poj.org/problem?id=3164 [解题思路]百度百科:最小树形图 ]里面有详细的解释,而Notonlysucess有精简的模板,下文有对其模板的一点解释,前提 ...

  2. 第三百二十五天 how can I 坚持

    任何事情都是相对的,以后禁止专牛角尖. 今天在家堕落了一天,说好的把天气应用,照葫芦画瓢弄好,结果什么也没弄. 和你 有个毛线关系啊,哈哈,太逗了. 准备睡觉,一切随缘,反正想也没什么用,自己也搞不懂 ...

  3. [翻译]创建ASP.NET WebApi RESTful 服务(9)

    一旦成功的发布API后,使用者将依赖于你所提供的服务.但是变更总是无法避免的,因此谨慎的制定ASP.NET Web API的版本策略就变得非常重要.一般来说,新的功能需要无缝的接入,有时新老版本需要并 ...

  4. 让MySQL支持中文

    这两天在学习webpy,把webpy的一个blog例子扒下来学习一下,默认创建的table当存入中文的时候是乱码,研究了一下这个问题. 1,创建table的时候就使用utf8编码 举个例子: crea ...

  5. eclipse 最有用的10个快捷键

    1Eclipse中10个最有用的快捷键组合 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代码,使得整体的开发效率和质量得到提升.    ...

  6. JSP文件下载时文件名在ie和firefox下面文件名不一致极其超链接中文乱码的问题的改进

    response.setContentType("application/octet-stream;charset=UTF-8"); fileName=java.net.URLEn ...

  7. 小巧实用js倒计时

    <script type="text/javascript">     var intDiff = parseInt(15); //倒计时总秒数量     functi ...

  8. 网页布局:float与position的区别

    网页开发中布局是一个永恒的话题.巧妙的布局会让网页具有良好的适应性和扩展性.css的布局主要涉及两个属性——position和float.它们俩看上去很容易被弄混,可是仔细分析一下,它们的区别还是很明 ...

  9. 【转】google推出的SwipeRefreshLayout下拉刷新用法

    SwipeRefreshLayout是Google在support v4 19.1版本的library更新的一个下拉刷新组件,实现刷新效果更方便. 使用如下: 1.先下载android-support ...

  10. (C#)使用队列(Queue)解决简单的并发问题

    (C#)使用队列(Queue)解决简单的并发问题 2015-07-16 13:04 13265人阅读 评论(8) 收藏 举报  分类: Asp.Net(8)  版权声明:本文为博主原创文章,未经博主允 ...