平台:ubnutu10.04

交叉编译器:arm-linux-gcc-3.4.1

第一步,准备相关文件

Qt官方网站可以下载qt-everywhere-opensource-src-4.8.1.tar,解压为3份,可分别命名为qt-x11qt-x86

qt-armqt-x11版本可以产生Qt开发工具:

designer——Qt界面的设计工具

qvfb——Qt的虚拟缓冲帧,嵌入式的开发有了qvfb,就可以不需要实际的开发板,也可以开发Qt应用程

uic——可以把Qt的界面描述文件转化为相应的 .h.cpp文件

moc——Qt的信号和插槽的定义翻译为标准的C++语法

qt-x86是基于x86架构的嵌入式版本:

如果我们想在PC机上进行嵌入式程序的仿真,就可以用qvfb来模拟嵌入式的显示器,但是qvfb只能执行x86架构的应用程序,所以需要生成关于x86的库和其他文件,如果不需要在PC机上仿真运行嵌入式程序,而是在板子上直接运行和调试,则可以不需要这个版本

qt-arm是基于ARM架构的嵌入式版本:

我最终的qt应用程序需要在arm架构上面运行,因此必然需要这方面的库,使用qt-arm库编译就可以得到在arm上能运行的可执行程序

第二步,Installing Qt for X11 Platforms

Step 1:Unpacking the Archive

tar xvf qt-everywhere-opensource-src-4.8.2.tar unpack it

Step 2:Building the Library

cd /tmp/qt-everywhere-opensource-src-4.8.2 

./configure

make

make install

Step 3:Set the Environment Variables

In .profile (if your shell is bash, ksh, zsh or sh), add the following lines:

PATH=/usr/local/Trolltech/Qt-4.8.2/bin:$PATH 

export PATH

第三步,Installing Qt for Embedded Linuxx86

进入x86目录

./configure -embedded x86 -qt-gfx-qvfb -qt-kbd-qvfb -qt-mouse-qvfb

make

make install

第四步,安装触摸屏校验工具

tslib-1.4.tar.gz放到一个目录下,比如/opt目录下。接着执行命令如下:

#tar zxvf tslib-1.4.tar.gz 

执行命令cd tslib,进入tslib当前目录,接着执行命令如

#./autogen.sh 

然后接着执行配置命令:

#./configure--prefix=/usr/local/tslib --host=arm-linux ac_cv_func_malloc_0_nonnull=yes 

最后执行编译命令和安装命令如下:

make 

make install 

如果以上步骤没错,则可以在/usr/local/tslib下出现我们需要的库文件,这些库文件我们移植时会用到。

编译期间出现的错误:./autogen.sh: 4: autoreconf: not found

解决:sudo apt-get install autoconf automake libtool

步,Installing Qt for Embedded LinuxARM

进入arm目录

./configure \

-prefix  /usr/local/Trolltech/QtEmbedded-4.6.3-arm 

-opensource \

-confirm-license \

-release -shared \

-embedded arm \

-xplatform qws/linux-arm-g++ \

-depths 16,18,24 \

-fast \

-optimized-qmake \

-pch \

-qt-sql-sqlite \

-qt-libjpeg \

-qt-zlib \

-qt-libpng \

-qt-freetype \

-little-endian  -host-little-endian \

-no-qt3support  \

-no-libtiff   -no-libmng \

-no-opengl \

-no-mmx  -no-sse  -no-sse2 \

-no-3dnow \

-no-openssl \

-no-webkit \

-no-qvfb \

-no-phonon \

-no-nis \

-no-opengl \

-no-cups \

-no-glib \

-no-xcursor   -no-xfixes  -no-xrandr   -no-xrender \

-no-separate-debug-info \

-nomake examples   -nomake  tools   -nomake docs

必须加上“-prefix /usr/local/Trolltech/QtEmbedded-4.8.1-arm 参数,不然安装后不在QtEmbedded-4.8.1-arm文件夹下,而是覆盖了QtEmbedded-4.8.1

如果放弃配置,则使用命令:make confclean

编译:make

安装:make install

第六步,安装并测试qvfb

编译安装PC版中的 qvfb

进入qt-pc/tools/qvfb/目录,执行如下操作:

#make

编译完毕,将qt-pc/bin目录下的qvfb文件复制到/usr/local/Trolltech/QtEmbedded-4.8.1/bin目录。

测试qvfb

为了方便使用qvfb模拟ARM的结果,在环境中添加qvfb的路径

输入命令: vim /.bashrc编辑.bashrc文件,在文件末尾加入如上面的内容

export PATH=/usr/local/Trolltech/QtEmbedded-4.8.1/bin:$PATH

重启,测试是否加入成功 

echo $PATH

看是否显示刚才添加的路径

测试

命令:#qvfb -width 800 -height 480 &

其中&表示后台运行。

基于ARM的Qt Creator嵌入式开发环境搭建相关推荐

  1. Qt QtCreator 安卓开发环境搭建

    踩坑 我的qt是使用在线安装工具安装的,Qt版本使用的是5.15.2,QtCreator版本9.0.2 在网上很多教程都是如下步骤 1.安装qt 2.安装jdk 3.安装android-sdk 4.安 ...

  2. ubuntu12.04嵌入式开发环境搭建(各种问题、各种配置)

    ubuntu-12.04嵌入式开发环境搭建 先安装ubuntu-16.04  *** 想使用root用户登陆的,操作如下 给root用户设定一个密码 supreme@supreme:~# sudo p ...

  3. 基于Eclipse平台的Android OpenCV开发环境搭建

    基于Eclipse平台的Android OpenCV开发环境搭建 作者:雨水, 日期:2016-1-31,CSDN博客:http://blog.csdn.net/gobitan 摘要:本文主要记录了如 ...

  4. #Kinect之路#基于ubuntu 12.04的Kinect开发环境搭建 OpenNI+NITE+AVIN2+qt

    之前基于Win7搭建了kinect的开发环境,由于本人的机子太慢,编一个qt的hello world都要半分钟,所以为了方便以后的开发调试,尝试在ubuntu 12.04下搭建开发环境. 注意,如果你 ...

  5. 基于Android Studio的Android app开发环境搭建

    前言:本环境搭建教程写给新手小白,大神请绕道.Android本质上就是一个嵌入式系统,因此也具备了嵌入式系统的跨平台,交叉编译等特点.凡是涉及到交叉编译的软件开发,环境的搭建从来就不是小事.如果读者观 ...

  6. ubuntu安装 rust nightly_Rust 嵌入式开发环境搭建指南 (一):让世界闪烁吧

    引 因为这是本专栏的第一篇文章,所以我打算先在这里介绍下专栏的写作目标. Rust 是一种系统编程语言. 它有着惊人的运行速度,能够防止段错误,并保证线程安全. Rust 官方一直标榜着自己是系统编程 ...

  7. Qt for Android开发环境搭建(QtCreator6.0.1+Qt5.15.2/Qt6.2.2+win10)

    前言 笔者很早就尝试使用Qt开发android程序,不得不承认,当前仍然比较小众.若是想一套代码的跨平台开发,或想要更高的执行效率,Qt值得一试 一.安装Qt 每个人需求不同,会安装不同版本的Qt,笔 ...

  8. 在windows环境下基于sublime text3的node.js开发环境搭建

    摘自:http://blog.sina.com.cn/s/blog_5a6efa330102vcla.html  (略有修改) 首先安装sublime text3,百度一堆,自己找吧.理论上subli ...

  9. 嵌入式开发环境搭建 与 系统移植

    本文:  全部参考  袁老师 的配置方法,谢谢袁老师细心指导. 本文续上文之后  https://blog.csdn.net/Eagle6zhen6/article/details/86578377 ...

最新文章

  1. AngularJs $resource 高大上的数据交互
  2. Python学习札记(二十三) 函数式编程4 sorted
  3. wxWidgets:在 Unix (GTK+) 下打印
  4. Jzoj4840 小W砍大树
  5. 设置clion执行前的cmake命令,和CMAKELIST.txt不冲突
  6. C++11学习 新特性之 “=default” 、“=delete”
  7. apscheduler executors
  8. 互联网上,极致才能成功
  9. SQL Server数据库导入导出数据方式比较
  10. Centos安装Clion
  11. Xgboost算法——Kaggle案例
  12. 数据分析中会常犯哪些错误,如何解决? 三
  13. actived生命周期_初探 Vue 生命周期和钩子函数
  14. odis工程师使用教程_ODIS 教程及工程师通过电脑软件版本改零件号
  15. 有计算机考试励志的文案,治愈·励志文案:写给即将参加考试的你
  16. 网页截图及TDK抓取
  17. java-初始化数组
  18. 中级工程师如何走向高级
  19. 《梦回水浒》玩家交流QQ群
  20. 智慧政务:政府运用大数据分析技术取得哪些成果

热门文章

  1. 【Android 逆向】Android 逆向通用工具开发 ( Android 逆向通用工具组成部分 | 各模块间的关联 )
  2. 【计算机网络】物理层 : 调制 ( 数字数据 调制 模拟信号 | 调幅 | 调频 | 调相 | 调幅 + 调相 QAM | 计算示例 | 模拟信号 调制为 模拟信号 )
  3. 【DBMS 数据库管理系统】数据仓库 数据组织 ( 数据组织级别 | 元数据 | 粒度 | 分割 | 数据组织形式 )
  4. 【运筹学】线性规划 单纯形法 案例二 ( 第一次迭代 | 矩阵变换 | 检验数计算 | 最优解判定 | 入基变量 | 出基变量 )
  5. 【Android 应用开发】Android 图表绘制 achartengine 示例解析
  6. 第十四章 架构师领导艺术(待续)
  7. Laravel POST请求API接口 使用validate表单验证返回欢迎页
  8. 使用urllib2简单爬取并保存内涵吧内涵段子指定分页的的描述信息
  9. 对象及变量的并发访问一
  10. PYTHON调用JENKINS的API来进行CI