QT/Embedded 现在的最新版本是Qtopia Core 4,网上找很久都没有相关教材,还是稳打稳扎用QT/embedded 2的版本来做。

目标平台是Freescale MX21,linux2.4内核,开发平台是RH9,下面是移植过程:
1. 下载qt-embedded和tmake
ftp://ftp.qtopia.org.cn/mirror/ftp.trolltech.com/qt/source/qt-embedded-2.3.8.tar.gz
ftp://ftp.qtopia.org.cn/mirror/ftp.trolltech.com/freebies/tmake/tmake-1.13.tar.gz
cd /work
tar -zxf qt-2.3.8-embedded.tar.gz
cd qt-2.3.8
tmake解压, 任意目录皆可,只要设置好TMAKEPATH环境变量,这里为了方便将tmake解压到tmake目录.
2 设置环境变量
TMAKE=/work/qt-2.3.8/tmake
TMAKEPATH=/work/qt-2.3.8/tmake/lib/qws/linux-arm-g++
QTDIR=/work/qt-2.3.8/
QTEDIR=/work/qt-2.3.8/

PATH=$TMAKE/bin:$PATH
export PATH QTDIR QTEDIR TMAKEPATH

3. 修正bug
tmake和qt-embedded-2.3.8在arm平台上有几个小bug, 在链接时使用arm-linux-gcc而不是arm-linux-g++
首先修正tmake
打开tmake/lib/qws/linux-arm-g++/下的tmake.conf
将其中的TMAKE_LINK和TMAK_LINK_SHLIB都修正为arm-linux-g++
TMAKE_LINK = arm-linux-g++
TMAKE_LINK_SHLIB = arm-linux-g++
然后就是qt-embedded下configs/linux-arm-g++{static/shared/static-debug/shared-debug}这几个arm配置中的定义SYSCONF_LINK SYS_CONF_LINK_SHLIB 都修正为arm-linux-g++

代码中也有一处:
src/kernel/qapplicaion_qws.cpp 中的2148行 beep函数, 好像arm是默认不处理sound的,所有要根据qsound.h中的QT_NO_SOUND宏将其修改一下

#ifndef QT_NO_SOUND

QSound *qt_beep_sound = 0;

void QApplication::beep()
{
    if ( qt_beep_sound )
    qt_beep_sound->play();
}
#else
void QApplication::beep()
{
}
#endif

4,配置编译
./configure -xplatform linux-arm-g++ -no-opengl -qt-libpng -qt-zlib -no-xft -static -no-qvfb -L/home/opt/mx21_tools/metrowerks/b56/Embedix/home/salem/project/MX21-b56/build/dev_image/usr/lib

make

如此简单,大公告成!
^_^

QT/Embedded 2.3.8 MX21ADS板移植相关推荐

  1. opencv-3.4.3 交叉编译并且移植到高通820开发板(包括Qt 5.11.2部分交叉编译及移植),NEON OpenCV编译

    opencv-3.4.3 交叉编译并且移植到高通820开发板(包括Qt 5.11.2部分交叉编译及移植),NEON OpenCV编译 原文我是用有道笔记记录的,下面排版不是很好,可参看有道笔记原文:h ...

  2. arm qt mysql插件,关于移植QT的Sqlite数据库到ARM板运行的问题

    关于移植QT的Sqlite数据库到ARM板运行的问题 运行一般的程序我们的步骤一般是在PC主机上编译,编译成功后交叉编译,然后把程序下载到ARM开发板上,因为主机的交叉编译库和ARM开发板的运行的QT ...

  3. Fedora12下搭建Qt Creator的ARM开发环境 并 移植Qt4.6.2到Micro2440

    Fedora12下搭建Qt Creator的ARM开发环境 并 移植Qt4.6.2到Micro2440 参考: http://hi.baidu.com/jiyeqian/blog/item/f46d2 ...

  4. Fedora9 下搭建Qt Creator的ARM开发环境并移植Qt4.6.3-books到mini2440

    Fedora9 下搭建Qt Creator的ARM开发环境并移植Qt4.6.3-books到mini2440 分类: LINUX 2011-10-18 16:44:56 因为在搭建ARM的qte环境时 ...

  5. [2021]Linux下C语言qrencode二维码生成库的基本使用和ARM开发板移植

    文章目录 一.前言 二.准备所用到的环境以及版本信息 1.Ubuntu和内核版本 2.gcc和g++版本 3.交叉编译gcc和g++版本 4.开发板信息 三.开发环境编译&安装qrencode ...

  6. 摄像头在liunx上的QT显示和OK6410 ARM开发板上的使用

    摄像头在liunx上的QT显示和OK6410 ARM开发板上的使用 发布者:旺旺雪饼   时间:2013-01-05 16:56:09 环境: Ubuntu10.04 arm linux OS: 3. ...

  7. 【Qt】2D绘图之涂鸦板

    00. 目录 文章目录 00. 目录 01. 概述 02. 开发环境 03. 程序设计(基本功能) 04. 程序设计(放大功能) 05. 程序设计(放大功能) 06. 附录 01. 概述 结合前面所学 ...

  8. QT Embedded二三事之QObject的元对象

    一.元对象  元对象被称做是meta object.在运行时刻(runtime),能够提供对象的运行时信息. 在C++语言发展的早期,C++语言本身没有定义对象的运行时信息,如输出类的名称,父类的名称 ...

  9. 乐鑫Esp32学习之旅 23 安信可 esp32-a1s 音频开发板移植最新 esp-adf 音频框架,小试牛刀如何实现在线文字转语音播放。

    本系列博客学习由非官方人员 半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1. 爬坑学习新旅程,虚拟机搭建esp32开发环境,打印 " ...

  10. 北邮实验:ARM实验板移植Linux操作系统,LCD显示汉字

    ARM实验板移植Linux操作系统,LCD显示汉字 一. 实验目的 1. 熟悉点阵字库的使用2. 熟悉Linux操作系统的使用3. 熟悉ARM嵌入式系统开发的过程 二. 实验内容 1. pc端编写用* ...

最新文章

  1. depot用例视图建模
  2. MapReduce将小文件合并成大文件,并设置每个切片的大小的案例
  3. python处理netcdf_在python中高效读取netcdf变量
  4. linux core无权限,linux – 为什么编辑core_pattern受限制?
  5. Linux软件安装及基本概念
  6. CSS从大图中抠取小图完整教程(background-position应用) (转)
  7. Excel中实用的3个数据透视表操作技巧,简单高效!
  8. 基本求导法则与导数公式
  9. webrt分析六(nack)
  10. 立锜1.2V~5.5V稳压芯片RT9078-33GJ5
  11. 高考530计算机专业,高考530分以下,学生该先选择大学还是专业?高考名师给出分析...
  12. 微信分享,获取分享点击事件,登录后才可以分享
  13. 高速扩张的云市场,需要怎样的安全能力?
  14. 404 找不到页面_找不到404页面设计,如何创建较大的错误页面
  15. APP、网站等注册、登录、改密等发送验证码短信的接入流程---创蓝253云通讯
  16. CSS的一些基础应用
  17. Base64编码的原理及实现(源码)
  18. Arcgis 熟练和操作
  19. SpringBoot-使用分页插件(PageHelper)
  20. iOS开发 App内自动连接指定Wi-Fi

热门文章

  1. 华为oj c语言 dna序列,(华为OJ)C 语言—计算字符串的距离(动态规划算法)
  2. [2018.07.12 T3] B君的第三题
  3. 什么是configmap资源、secret资源(实战)
  4. cat的实用技巧 cat>>/etc/profile<<EOF
  5. android系统的图标大小,android开发中手机图标大小的问题
  6. java rcp教程_Eclipse RCP教程 - 13 - 练习:创建Eclipse RCP程序 | JavaFX中文资料
  7. java写培根披萨和海鲜披萨_java子类继承父类实例-披萨的选择实现代码
  8. python 并行_python多进程并行代码实例
  9. [NOIp 2012]同余方程
  10. WordPress安装插件提示输入FTP账户信息