QT环境的搭建

来源:互联网 发布:microsoft是什么软件 编辑:程序博客网 时间:2024/06/10 05:54

所需原文件:

arm-linux-gcc 3.4.1

Qt-everywhere-src-opensource 4.6.3.tar.gz

Qt-sdk-linux-x86-opensource_2010.02.bin

Tslib-1.4.tar.gz

 

1、检查电脑上有没有g++:g++ --version

2、解压安装Qt-everywhere-src-opensource 4.6.3-X11参数不需要配置,但须升级X11 

apt-get install libX11-dev libXext-dev libXtst-dev

apt-get install xorg-dev

tar xzvf qt-everywhere-opensource-4.6.3.tar.gz
mv qt-everywhere-opensource-4.6.3 qt-everywhere-opensource-4.6.3-x11
cd qt-everywhere-opensource-src-4.6.3-x11
./configure -nomake examples -nomake demos
make && make install

 

3、设置环境变量

vi setenv.sh

添加如下内容
:

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

LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.6.3/lib:$LD_LIBRARY_PATH

保存退出.

       移到/usr/local/Trolltech/Qt-4.6.3中。


4、解压安装Qt-everywhere-opensource4.6.3-x86      

# tar xzvf qt-everywhere-opensource-src-4.6.3.tar.gz
# mv qt-everywhere-opensource-src-4.6.3 \

              qt-everywhere-opensource-src-4.6.3-x86
# cd qt-everywhere-opensource-src-4.6.3-x86
# ./configure -prefix /usr/local/Trolltech/Qt-4.6.3-x86 -nomake examples -nomake demos -nomake docs -nomake tools -embedded x86 -qvfb
# make
# make install

5、设置环境变量

新建文件vi setenv.sh

添加如下内容
:

QTEDIR=/usr/local/Trolltech/Qt-4.6.3-x86

PATH=/usr/local/Trolltech/Qt-4.6.3-x86/bin:$PATH

LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.6.3-x86/lib:$LD_LIBRARY_PATH

保存退出.移到/usr/local/Trolltech/Qt-4.6.3-x86中。

6、安装QTCreator

 ./Qt-sdk-linux-x86-opensource_2010.02.bin    默认安装即可  

 

7、解压arm-linux-gcc-3.4.1.tar.bz2

 

   tar jxvf arm-linux-gcc-3.4.1.tar.bz2

tar jxvf arm-linux-gcc-3.4.1.tar.bz2 -C / 自动解压到usr/local

进入  /usr/local/arm/3.4.1/bin/ 输入pwd

   设置到环境变量:gedit ~/.bashrc

  Vim ~ /.bashrc

 最后加一行:export PATH=$PATH:/usr/local/arm/3.4.1/binarm-linux-gcc路径)

   New    ------     export PATH=$PATH:/usr/local/arm/3.4.1/bin

 

关闭终端再重新打开

Arm-linux-gcc检查是否命令是否存在

8、解压安装触摸屏驱动

#tar xzvf tslib-1.4.tar.gz

# apt-get install libtool

# apt-get install autoconf

#cd tslib.1.4

# ./autogen.sh
# CC=arm-linux-gcc

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

# ./configure --prefix=/opt/ts/ --host=arm-linux --cache-file=arm-linux.cache

# make

# make install

 

可能有参数错误在文件下/tests/calibrate_c文件的227 229行参数后面补0再重新make

 

9、解压安装qt-everywhere-opensource-src-4.6.3-arm 

补充:tar xzvf qt-everywhere-opensource-src-4.6.3.tar.gz -C /usr

/local

进入usr/local/Torlltech/Qt-4.6.3-arm/

设置 vi setenv.sh

 

进入 qt-everywhere-opensource-src-4.6.3-x11/bin

cp qvfb /usr/local/Trolltech/Qt-4.6.3-x86/bin

/usr/local/Trolltech/Qt-4.6.3-x86/bin

运行sudo ./qvfb &

 

 #tar xzvf qt-everywhere-opensource-src-4.6.3.tar.gz

# mv qt-everywhere-opensource-src-4.6.3 \

              qt-everywhere-opensource-src-4.6.3-arm

# cd qt-embedded-linux-opensource-src-4.6.3-arm

./configure \

-prefix /usr/local/Trolltech/Qt-4.6.3-arm \

-release -shared -fast \

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

-depths 16 -no-qvfb \

-no-qt3support -qt-sql-sqlite -qt-zlib -qt-libpng -qt-freetype \

-qt-mouse-tslib -no-mouse-pc -no-mouse-linuxtp \

-nomake examples -nomake demos -nomake docs -nomake tools \

-I/opt/ts/include -L/opt/ts/lib

调整源码假如ARM平台参数

1. 打开qt-everywhere-opensource-src-4.6.3-arm/src/3rdparty/freetype/include/freetype/config/ftconfig.h,将330行代码改为:

"orr   %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */

       2.打开qt-everywhere-opensource-src-4.6.3-arm/src/3rdparty/webkit/WebCore/Makefile CFLAGSCXXFLAGS也一并加上)中加入-D__ARM_ARCH_4T__

       3. 打开qt-everywhere-opensource-src-4.6.3-arm/src/script/Makefile,CFLAGS CXXFLAGS也一并加上)中加入-D__ARM_ARCH_4T__

 

make && make install

 

10、配置环境变量

vi setenv.sh

添加如下内容
:

QTEDIR=/usr/local/Trolltech/Qt-4.6.3-arm

PATH=/usr/local/Trolltech/Qt-4.6.3-arm/bin:$PATH

LD_LIBRARY_PATH=/usr/local/Trolltech/Qt-4.6.3-arm/lib:$LD_LIBRARY_PATH

保存退出.

       移到/usr/local/Trolltech/Qt-4.6.3-arm

 

11、编译qvfb

cd qt-everywhere-opensource-4.6.3

cd /tools/qvfb

make --
会在qt-everywhere-opensource-4.6.3/bin下生成qvfb,我们将它copy/usr/local/Trolltech/Qt-4.6.3-x86/bin

cp ../..bin/qvfb /usr/local/Trolltech/Qt-4.6.3-x86/bin

 

11.、运行测试

运行x86setenv.sh脚本文件。Source setenv.sh

命令行输入qvfb &  &后台运行)

Qtcreator工程文件 qmake make生成可执行文件

./可执行文件 -qws

 

12、ARM板上配置环境: (板子和电脑之间)

编辑目标环境下(/utulinux2.6.24/s3c2440_recover/etc

)的/etc/profile,在文件后面添加如下内容:

export LD_LIBRARY_PATH=/lib:$LD_LIBRARY_PATH

export QTDIR=/opt/qt

export QPEDIR=$QTDIR

export T_ROOT=/tslib-1.4

export PATH=$T_ROOT/bin:$PATH

export LD_LIBRARY_PATH=$T_ROOT/lib:$QTDIR/lib:$LD_LIBRARY_PATH

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/fb0

export TSLIB_TSDEVICE=/dev/event0

export TSLIB_PLUGINDIR=$T_ROOT/lib/ts

export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf

export TSLIB_CALIBFILE=/etc/pointercal

export QWS_KEYBOARD=USB:/dev/input/event1

export QWS_MOUSE_PROTO=Tslib:/dev/event0

export QWS_DISPLAY=LinuxFb:mmWidth45:mmHeight60:0

export QWS_SIZE=320x240

 

13、拷贝QT库文件

在目标环境中(/utulinux2.6.24/s3c2440_recover)

建立与编译QT-arm一样的路径:

mkdir /usr/local/Trolltech/Qt-4.6.3-arm

cd /usr/local/Trolltech/Qt-4.6.3 -arm
mkdir lib/
//   mkdir lib/fonts/

cp -rf fonts /utulinux2.6.24/s3c2440_recover/usr/local/Trolltech/Qt-4.6.3-arm/lib

 

把以下的库文件从编译主机中的lib复制目录中的四个库文件复制到目标板的/usr/local/Qt-4.6.3-arm/lib
 libQtCore.so.4.6.3
 libQtGui.so.4.6.3
 libQtNetwork.so.4.6.3
 libQtSql.so.4.6.3

每个库文件创建有3个连接:*.so,*.so.4,*.so.4.6 *.so.4.6.3

 常用字库文件从lib/fonts/复制到目标板的/usr/local/Qt-4.6.3/lib/fonts/

cp libQtCore.so libQtCore.so.4 libQtCore.so.4.6 libQtCore.so.4.6.3 /utulinux2.6.24/s3c2440_recover/usr/local/Trolltech/Qt-4.6.3-arm/lib

cp libQtGui.so libQtGui.so.4 libQtGui.so.4.6 libQtGui.so.4.6.3 /utulinux2.6.24/s3c2440_recover/usr/local/Trolltech/Qt-4.6.3-arm/lib

cp libQtNetwork.so libQtNetwork.so.4 libQtNetwork.so.4.6 libQtNetwork.so.4.6.3 /utulinux2.6.24/s3c2440_recover/usr/local/Trolltech/Qt-4.6.3-arm/lib

cp libQtSql.so libQtSql.so.4 libQtSql.so.4.6 libQtSql.so.4.6.3 /utulinux2.6.24/s3c2440_recover/usr/local/Trolltech/Qt-4.6.3-arm/lib 

 

14、把编译好的触摸屏驱动加到板子上

1:将交叉编译好的ts文件cp到开发板中对应的目录下,其中的include目录和lib下的pkgconfig目录可以不拷贝。

cp -rf  /opt/ts /utulinux2.6.24/s3c2440_recover/opt/ts

 

2:检查ts/etc/ts.conf内容:

module_raw input
module pthres pmin=1
module variance delta=30
module dejitter delta=100
module linear

 

16电脑端运行看是否有显示效果

./可执行程序 -qws

tar jxvf s3c2440_recover.20090303.tar.bz2 -C /utulinux2.6.24/

cd utulinux2.6.24/

cp qt-sdk-linux-x86-opensource-2010.02.bin /opt

chmod 777 qt-sdk-linux-x86-opensource-2010.02.bin

 sudo ./qt-sdk-linux-x86-opensource-2010.02.bin

 

原创粉丝点击