Qt开发环境的搭建
首先讲讲为什么要用Qt这个东东吧!用了以后才知道,这门语言真的很不错,我权当把它当成了类库来用,Linux本身的C语言编程是很烦的,比如说串口编程,虽说C编程也不难,但是使用Qt这种封装的类库来操作的话,会少很多的bug,更值得一提的是GUI编程,Qt提供了丰富的GUI控件,对于制作嵌入式GUI来说比较适合!所以我也就跟大家一样,使用Qt来开发嵌入式软件吧!
在之前我的博客里面已经有了一片文章关于交叉工具链的,在搭建好了交叉工具链以后,咱们只需要两个download的包就可以开工了,今天的主题是Qt环境的搭建包括环境变量的设置,Okay,Lets go!
这两个包分别是qt-everywhere-opensource-src-4.8.0.tar.gz位于http://download.qt-project.org/archive/qt/4.8/4.8.0/网页下,还有一个tslib-1.4.bar.gz位于http://ishare.iask.sina.com.cn/f/21567219.html网页下,第一步当然是有耐心的下下来!
step1->搞定tslib:
在继续写下去之前还是介绍一下我的环境吧:
OS:Ubuntu 12.04LTS
Board: Mini2440(s3c2440 arm9)
Gcc Version:4.6.3
基本上参数就是这样。
tslib是电阻式触摸屏用于校准的一个软件库,是一个开源的程序,能够为触摸屏驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的适配层,为上层的应用提供了一个统一的接口。因此这里先编译安装tslib,这样在后面编译Qt的时候才能打包编译进去。首先需要检查一下软件是否安装,
sudo apt-get install automake
sudo apt-get install autogen
sudo apt-get install autoconf
这三个一定要检查,不然有可能编译出错!
# tar -zxvf tslib-1.4.tar.gz ---因为下面prefix 指定安装在/usr/local下,这个文件 不能放在/usr/local下面!可放在其它目录如/home.
# cd tslib
# ./autogen.sh
#./configure --host=arm-linux ac_cv_func_malloc_0_nonnull=yes --cache-file=arm-linux.cache -prefix=/usr/local/tslib
# make
# make install
-prefix=/usr/local/tslib是指定安装路径,其实包括下文的安装配置,路径都可以不指定,默认就是安装到/usr/local/目录下.
将交叉编译的tslib安装到开发板上其实就是拷贝相关的文件并添加系统环境变量而已,所以相对操作较为简单,主要的就是需要找对目录就行。 按照上面的操作方法,
交叉编译安装后的文件在/usr/local/tslib目录下,因此需要拷贝的文件如下:
1. /usr/local/tslib/lib文件下除去pkgconfig目录外其他所有文件拷贝到开 发板/lib目录下
2. /usr/local/tslib/etc下的ts.conf拷贝到开发板的/etc下,在复制对应 目录之前修改文件如下,也可以复制完成后修改。
3. /usr/local/tslib/bin下的所有文件拷贝到开发板/tslib下;
下面是ts.conf文件的第一行与第二行
# Uncomment if you wish to use the linux input layer event interface
# module_raw input 去掉
# module_raw input前面的注释,一定要注意中间的空格也去掉,module顶格。 注意:
运行./ ts_calibrate时可能会出现selected device is not a touchscreen I understand错误,这时只需要将ts.conf文件中的#module_raw h3600 的注释符号去掉(左边不能留空格).
最后添加环境变量,通过超级终端在开发板系统中添加环境变量,可以在开发板文件系统的/etc/profile(nfs 挂载时是/opt/mini2440/root_nfs/etc/profile)文件里添加。
export TSLIB_TSDEVICE=/dev/input/ts0 export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=/lib/ts
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
说明: TSLIB_TSDEVICE->触摸屏设备文件名。 TSLIB_CALIBFILE->校准的数据文件,由ts_calibrate校准程序生成。 SLIB_CONFFILE->配置文件名。 TSLIB_PLUGINDIR->插件目录 TSLIB_CONSOLEDEVICE->控制台设备文件名 TSLIB_FBDEVICE->设备名 以上环境变量在实际开发中的实际配置可以根据实际情况决定。而这些指定的设备节点一定要和你的开发板上的/dev目录下的设备节点相对应。 最后运行测验程序 ts_calibrate 进行校验 ts_test 进行测试。
step2->编译qt for embedded
这个配置很长很烦,改天补上!
step3->配置环境变量
首先先跟大家介绍一下我现在机器上的软件,ubuntu 12.04自带qt4库,在安装好了qt-creator后会有另外一个qmake,这样以来,有冲突啊,首先给大家看看我们的qt-creator在哪里。
可见/user/bin下面存在一个,这个是供qt-creator调用的,这里的编译出来的东西是在i386上面跑的,可以使用qmake -v查看当前使用的qmake是哪个,使用的库是哪个?
那我们要编译源文件到板子上去跑,用这个肯定是不行的,但是我们的Trolltech包里面有qmake,在哪儿呢?去看看吧!就在这里:
Qt开发环境的搭建的更多相关文章
- 嵌入式Qt开发环境的搭建详解
一.嵌入式Qt开发环境的搭建前奏 1.下载arm-linux-gcc-4.4.3-20100728.tar.gz 2.下载qt-everywhere-opensource-src-4.8.5.tar. ...
- Windows平台下Qt开发环境的搭建
Qt 是采用开源和商用双协议发布的开放源代码的图形开发类库,现在很多图形化的开源软件都使用了Qt. 下载地址:http://qt-project.org/downloads 1. 下载安装包 你可以从 ...
- Ubuntu 12.04下搭建Qt开发环境
http://download.qt.io/official_releases/qt/ Ubuntu 环境下Gtk与Qt编译环境安装与配置(系统环境是Ubuntu 12.04) 1.配置基础开发环境G ...
- 第一章 搭建Qt开发环境
第一章 搭建Qt开发环境 1.到http://download.qt-project.org/archive/上下载Qt的源码包.我下载的是qt-everywhere-opensource-src-4 ...
- Unix/Linux环境C编程入门教程(20) 搭建基于Mac的 Xcode 与 QT 开发环境
1.启动 Vmware,如果没有 VMware 的同学,请看前面我们搭建 VMware 的视频 2.打开虚拟机以后,出现虚拟机界面 3 新建一个虚拟机 4 选择自定义,单击下一步 5 选择默认的 VM ...
- qt学习教程1.qt开发环境搭建
qt学习教程1.qt开发环境搭建 首先下载qt 下载地址:http://download.qt.io/archive/qt/ 此教程使用的版本为5.1.1 下载好后,打开安装包,然后点下一步 选择一个 ...
- Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程
Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程 一.准备工具: QT-SDK for Windows:http://get.qt.nokia.com/qtsdk/qt-sd ...
- windows下VisualStudio和QtCreator搭建Qt开发环境
一.简介 集成开发平台IDE都有各自的长处,编写Qt程序可根据自己的喜好来选择相应的IDE.下述文章都是装载博友的文章,其中有很多细节还得自己调整. 二.详解 1.VisualStudio搭建Qt开发 ...
- Zynq7000开发系列-6(QT开发环境搭建:Ubuntu、Zynq)
操作系统:Ubuntu14.04.5 LTS 64bit Qt:Qt 5.4.2 (qt-opensource-linux-x64-5.4.2.run.qt-everywhere-opensource ...
随机推荐
- intellij idea 运行jedis
到这里下载 http://mvnrepository.com/ jar包! 将jar包放入项目目录中,并引入! 引入包到项目中!创建对象! package com.company; import re ...
- mysqli的简单工具包
mysqli的简单工具包 <?php /** * 连接 * @param string $host * @param string $user * @param string $password ...
- malloc和new出来的地址都是虚拟地址 你就说内存管理单元怎么可能让你直接操作硬件内存地址!
malloc的实现与物理内存自然是无关的,内核为每个进程维护一张页表,页表存储进程空间内每页的虚拟地址,页表项中有的虚拟内存页对应着某个物理内存页面,也有的虚拟内存页没有实际的物理页面对应.无论mal ...
- ROS-OPENCV
前言:opencv是一个开源的跨平台计算机视觉库. 前提:1.已下载并编译了相关功能包集,如还未下载,可通过git下载:https://github.com/huchunxu/ros_explorin ...
- Spark RDD概念学习系列之Pair RDD的action操作
不多说,直接上干货! Pair RDD的action操作 所有基础RDD 支持的行动操作也都在pair RDD 上可用
- .NET Datatable常用系列一
Datatable常用系列一 一.用作集合存储数据: DataTable dt = new DataTable("action"); for (int i = 0; i < ...
- Android中onActivityResult()获取返回值
需求:从FirstActivity跳到SecondActivity,在SecondActivity中进行了操作并返回到FirstActivity. FirstActivity中的主要代码: priva ...
- ABBYY FineReader 双十二特惠活动正在进行中...
转眼间11月已悄然飘过,有些童鞋还没缓过双十一的劲,势必将剁手进行到底.只为当时没有鼓足勇气.狠下心来而悔恨其中.别担心,双十二你准备好了么,ABBYY FineReader 系列产品低价让你继续嗨到 ...
- ABBYY FineReader双十一优惠享不停,战绩如何?
随着双十一的火热来袭,购物达人也是不吝啬囊中票子,各种姿势剁手齐全,立誓过后吃土半月,双十一的好与不好?自己也是门清,反正真真的是促进消费了! 就ABBYYFineReader而言,此次的双十一力度就 ...
- java简单实现MD5加密
1.话不多说,直接上代码-----传入字符串,返回加密码 import java.security.MessageDigest; import java.text.NumberFormat; publ ...