ubuntu11.04编译TQ2440 Qt2.2.0 成功
转: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 成功的更多相关文章
- ubuntu14.04 编译安装gcc-5.3.0
最近编译个源码,要求对C++14的支持了,就GCC的编译安装最新的5.3.0,整个过程以root用户进行. 1.下载GCC源码,属于事后文档整理,已经不知道从哪下载了. 2.解压:tar -zxvf ...
- Ubuntu 14.04 编译newLISP 10.6.0
1. 确保安装了gcc4.8.2 2. 安装须要的库: apt-get install libreadline6 libreadline6-dev 3. 下载并解压newLISP源码,这个不多说了,去 ...
- ubuntu11.04编译gm8180的ffmpeg
1.1 About this documentThe ffmpeg is a open source package that provides video application for gener ...
- ubuntu11.04 编译ffmpeg2.7 并生成 ffplay进行流媒体測试
源代码安装方式: 1. 先下载ffmpeg 安装包 到官网上 http://ffmpeg.org/download.html#releases 下载.选择Download gzip tarball. ...
- Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决
昨晚在编译源码,make一段时间之后报错如下: # A fatal error has been detected by the Java Runtime Environment: # # SIGSE ...
- Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)
Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python) 前提是已经安装了python2,python3 1)安装各种依赖库 sudo apt-get update ...
- 保姆级教程——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版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...
- 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 ...
- [笔记] Ubuntu 18.04源码编译安装OpenCV 4.0流程
标准常规安装方法安装的OpenCV版本比较低,想尝鲜使用4.0版本,只好源码安装. 安装环境 OS:Ubuntu 18.04 64 bit 显卡:NVidia GTX 1080 CUDA:10.0 c ...
随机推荐
- Windows Azure Platform 系列文章目录
Windows Azure Platform (一) 云计算的出现 Windows Azure Platform (二) 云计算的分类和服务层次 Windows Azure Platform (三) ...
- Percona Xtrabackup备份mysql(转)
add by zhj:另外,参考了Xtrabackup之innobackupex备份恢复详解,我用的是Xtrabackup2.2.6版本, 可以成功备份和恢复指定的数据库. 原文:http://www ...
- cocos2dx使用了第三方库照样移植android平台-解决iconv库的移植问题
当我写这篇文章的时候我是怀着激动的心情的,因为我又解决了一个技术问题.你可能对题目还一知半解,这是什么意思,我之所以要写这篇文章就是要解决当我们在cocos2dx中使用了第三方库的时候,移植到andr ...
- POJ 2318 TOYS (计算几何,叉积判断)
TOYS Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 8661 Accepted: 4114 Description ...
- Struts – Multiple configuration files example
Many developers like to put all Struts related stuff (action, form) into a single Struts configurati ...
- USB开发库文件分析
stm32f10x_it.c: 该文件中包含 USB 中断服务程序,由于 USB 中断有很多情况,这里的中断服务程序只是调用 usb_Istr.c 文件中的 USB_Istr 函数,由 USB_Ist ...
- sql中获得时间的参数
(----我错了,以下非php.php用例:FORM_UNIXTIME($time, '%H')取小时数.---) 返回表示指定日期的指定日期部分的整数. 语法 DATEPART ( datepart ...
- C#用串口接收事件接不全数据的处理
问题描述:都知道用事件dataReceive来处理串口非常的方便,但当一次的数据过长时,就会出现截断数据的情况.比如说发一个指 令,返回一个30个字节的数据,但上位机则分两次来接收者30个数据. 解决 ...
- 1016. 部分A+B (15)
正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA.例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6. 现给定A.DA.B.DB,请编 ...
- 基本的TCP编程
int socket(int family,int type,int protocol); family: AF_INET ipv4协议 AF_INET6 ipv6协议 AF_LOCAL unix域协 ...