编译qt指定glibc_编译QT4.5

本文详细介绍了如何在Ubuntu 8.10环境下,使用arm-softfloat-linux-gnu-gcc交叉编译qt-embedded-linux-opensource-src-4.5.1,包括安装qt-x11以获取qvfb,配置编译环境,解决编译过程中遇到的问题,如libxtst-dev的安装,以及最终的测试和应用。此外,还涉及了tslib1.4的编译安装,用于支持触摸屏功能。
摘要由CSDN通过智能技术生成

[linux嵌入式方向]交叉编译qt-embedded-linux-opensource-src-4.5.1源码

farsight2009 发表于 2009-7-13 14:38:00

作者:孙晓明,华清远见嵌入式学院讲师。

首先要有配置好的环境,本文使用的编译环境如下:

主机系统:Ubuntu 8.10

主机编译器:gcc 版本 4.3.2

交叉编译器:arm-softfloat-linux-gnu-gcc

软件资源:qt-embedded-linux-opensource-src-4.5.1.tar.gz

qt-x11-opensource-src-4.5.1.tar.gz

因为一般嵌入式设备上都是在framebuffer的方式,在X11上就是用qvfb 来模拟framebuffer的,我们平时开发也都是在PC上完成的,所以我们需要先安装X11版的Qt来获取qvfb这个工具。嵌入式的开发有了 qvfb,就可以不需要实际的开发板,也可以开发Qt应程序。

一、下载

qt-embedded-linux-opensource-src-4.5.1.tar.gz

qt-x11-opensource-src-4.5.1.tar.gz

二、编译安装qt-embedded

# tar -zxvf qt-embedded-linux-opensource-src-4.5.1.tar.gz

# cd qt-embedded-linux-opensource-src-4.5.1

# ./configure -embedded x86 -qvfb

# make

# make install

qt-embedded 被安装在这个目录下/usr/local/Trolltech/QtEmbedded-4.5.1

设置环境变量:

# vi ~/.bashrc

把下面的加上去

export QTEDIR=/usr/local/Trolltech/QtEmbedded-4.5.1

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

export LD_LIBRARY_PATH=/usr/local/Trolltech/QtEmbedded-4.5.1/lib:$LD_LIBRARY_PATH

至此,qt-embedded安装完毕

三、编译安装qt-x11

# tar -zxvf qt-x11-opensource-src-4.5.1.tar.gz

# cd qt-x11-opensource-src-4.5.1

# ./configure

# make

# make install

qt-x11 被安装到此目录下/usr/local/Trolltech/Qt-4.5.1

编译qvfb:

# cd qt-x11-opensource-src-4.5.1/tools/qvfb

# make

/*****Added by PengCarl (12 December 2009)*****/

出现错误:/usr/bin/ld: cannot find -lXtst

解决:ubuntu没装有libxtst-dev,解决如下

# aptitude install libxtst-dev

/**********************************************/

把生成的qvfb复制到qt-embedded的bin下,如

# cp qt-x11-opensource-src-4.5.1/bin/qvfb /usr/local/Trolltech/QtEmbedded-4.5.1/bin

至此,qt-x11安装完毕完毕

四、测试

# cd /usr/local/Trolltech/QtEmbedded-4.5.1/demos/

# qvfb &

# ./chip -qws

随即我们就可以看到qt自带的例程图像了。

五、编译qt自带的例程

# cd /usr/local/Trolltech/QtEmbedded-4.5.1/demos/

# qmake chip.pro  (生成Makefile文件)

# make

5、编译安装tslib1.4

1.首先下载tslib-1.4.tar.gz,下载地址:

2.解压文件后

记得现安装三个东西

#sudo apt-get install autoconf

#sudo apt-get install automake

#sudo apt-get install libtool

确认已经安装并设置好arm-linux-gcc

然后进行编译

#cd tslib/

#export CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc

#export CXX=/usr/local/arm/3.4.1/bin/arm-linux-g++

运行

#./autogen.sh

#echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache

配置安装参数

#./configure --host=arm-linux --cache-file=arm-linux.cache --enable-inputapi=no PLUGIN_DIR=/usr/local/arm/tslib/plugins -prefix=/usr/local/arm/tslib/build -host=arm-linux --cache-file=arm-linux.cache 2>&1 | tee conf_log

编译

#make 2>&1 | tee make_log

#make install

编译后会出现bulid文件夹

#cd build/etc

#gedit ts.conf

去掉module_raw input前面的#号和空格移植到开发板

把build 文件夹拷贝到开发板相应的地方。我的就是拷贝到/home/tslib下

环境变量

#!/bin/sh

export set T_ROOT=/home/tslib/build

export set LD_LIBRARY_PATH=$T_ROOT/lib

export set TSLIB_CONSOLEDEVICE=none

export set TSLIB_FBDEVICE=/dev/fb0

#export set TSLIB_TSDEVICE=/dev/event0

export TSLIB_TSDEVICE=/dev/h3600_tsraw

export set TSLIB_PLUGINDIR=$T_ROOT/lib/ts

export set TSLIB_CONFFILE=$T_ROOT/etc/ts.conf

export set TSLIB_CALIBFILE=/home/tslib/build/etc/pointercal

cd /home/tslib/build/bin

./ts_calibrate

在终端用env查看环境变量如下:

[root@utu-Linux]\$ env

TSLIB_TSDEVICE=/dev/event0

USER=root

LD_LIBRARY_PATH=/home/tslib/build/lib

OLDPWD=/hom

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值