以目前最新QT4.6.3版本的来说
一、 从QT的Nokia官方下载http://qt.nokia.com/downloads
Qt libraries 4.6.3 for embedded Linux (161 MB) Qt libraries 4.6.3 for Linux/X11(161 MB) qte使用的是Embedded Linux版本
Qt libraries 4.6.3 for Linux/X11(161 MB) 编译qt使用这个版本
二、解压下载的文件
tar -xzf qt-everywhere-opensource-src-4.6.3.tar.gz
然后在当前目前下建立qte-4.6.3/qt-4.6.3目录
cd qte-4.6.3/cd qt-4.6.3
三、配置
configure qte for embedded x86
./configure -prefix /home/devin/test/qte-4.6.3 -release -no-separate-debug-info -shared -no-fast -largefile -exceptions -accessibility -stl -qt-sql-sqlite -xmlpatterns -multimedia -audio-backend -no-phonon -phonon-backend -svg -webkit -javascript-jit -script -scripttools -no-declarative -qt-zlib -qt-gif -no-libtiff -qt-libpng -no-libmng -qt-libjpeg -openssl -nis -no-cups -iconv -pch -qt-gfx-linuxfb -qt-gfx-multiscreen -qt-gfx-qvfb -no-gfx-transformed -no-glib -dbus -qvfb -qt-mouse-qvfb -plugin-mouse-tslib -no-qt3support -opensource -confirm-license -qt-mouse-linuxinput -embedded x86 -xplatform qws/linux-x86-g++ (-arch x86 -no-armfpa -depths 2,8,16,32) //()里为保留
configure qte for arm/mips
./configure -prefix /home/devin/test/qte-4.6.3 -release -no-separate-debug-info -shared -no-fast -largefile -exceptions -accessibility -stl -qt-sql-sqlite -xmlpatterns -multimedia -audio-backend -no-phonon -phonon-backend -svg -webkit -javascript-jit -script -scripttools -no-declarative -qt-zlib -qt-gif -no-libtiff -qt-libpng -no-libmng -qt-libjpeg -openssl -nis -no-cups -iconv -pch -qt-gfx-linuxfb -qt-gfx-multiscreen -qt-gfx-qvfb -no-gfx-transformed -no-glib -dbus -qvfb -qt-mouse-qvfb -plugin-mouse-tslib -no-qt3support -opensource -confirm-license -qt-mouse-linuxinput -embedded arm -xplatform qws/linux-arm-g++ (-arch arm -no-armfpa -little-endian -depths 2,6,16,32) //()里内容为保留 根据嵌入式的特点里面的选项是可公裁减
configure qt for x86(need X11)
./configure -prefix /home/devin/test/qt-4.6.3 -release
-no-separate-debug-info -shared -no-fast -largefile -exceptions
-accessibility -stl -qt-sql-sqlite -xmlpatterns -multimedia
-audio-backend -no-phonon -phonon-backend -svg -webkit -javascript-jit
-script -scripttools -no-declarative -qt-zlib -qt-gif -no-libtiff
-qt-libpng -no-libmng -qt-libjpeg -openssl -nis -no-cups -iconv -pch
-qt-gfx-linuxfb -qt-gfx-multiscreen -qt-gfx-qvfb -no-gfx-transformed
-no-glib -dbus -qvfb -qt-mouse-qvfb -plugin-mouse-tslib -no-qt3support
-opensource -confirm-license -qt-mouse-linuxinput (注意:不能有-xplatform选项,否则出现Basic XLib functionality test failed!和libdbus-1 version 0.93 was not found的问题)
配置时有可选项-nomake examples -nomake demos -nomake docs -nomake tools(当不需要对example/demos/docs编译时使用)
关于-xplatform qws/linux-x86-g++这个参数使用可参考qmake的安装(http://www.antsight.com/liyi/qt/qmake-manual-2.html)
在手工连编Qt之前,下面这些环境变量必须被设置:
-
QMAKESPEC
这个必须设置为你所使用的系统的平台和编译器的组合。
举例来说,加入你使用的是Windows和Microsoft Visual Studio,你应该把环境变量设置为win32-msvc。如果你使用的是Solaris和g++,你应该把环境变量设置为solaris-g++。
当你在设置QMAKESPEC时,可以从下面的可能的环境变量列表中进行选择:
aix-64 hpux-cc irix-032 netbsd-g++ solaris-cc unixware7-g++ aix-g++
hpux-g++ linux-cxx openbsd-g++ solaris-g++ win32-borland aix-xlc
hpux-n64 linux-g++ openunix-cc sunos-g++ win32-g++ bsdi-g++ hpux-o64
linux-icc qnx-g++ tru64-cxx win32-msvc dgux-g++ hurd-g++ linux-kcc
reliant-64 tru64-g++ win32-watc freebsd-g++ irix-64 macx-pbuilder
reliant-cds ultrix-g++ win32-visa hpux-acc irix-g++ macx-g++ sco-g++
unixware-g hpux-acc irix-n32 solaris-64 unixware7-cc
envvar是下面之一时,环境变量应该被设置到qws/envvar:
linux-arm-g++ linux-generic-g++ linux-mips-g++ linux-x86-g++ linux-freebsd-g++ linux-ipaq-g++ linux-solaris-g++ qnx-rtp-g++
-
QTDIR
这个必须设置到Qt被(或者将被)安装到的地方。比如,c:\qt和/local/qt。
一旦环境变量被设置到qmake目录,$QTDIR/qmake,比如C:\qt\qmake,现在根据你的编译器运行make或者nmake。
当编译完成时,qmake已经可以使用了。
在配置的过程中如果你缺乏一些工具需要安装,如:
The QtDBus module cannot be enabled because libdbus-1 version 0.93 was not found.
Turn on verbose messaging (-v) to ./configure to see the final report.
If you believe this message is in error you may use the continue
switch (-continue) to ./configure to continue.
sudo apt-get install libdbus-1-dev
Creating qmake. Please wait...
make: Nothing to be done for `first'.
The tslib functionality test failed!
You might need to modify the include and library search paths by editing
QMAKE_INCDIR and QMAKE_LIBDIR in
/home/zz/work/qte/qt-everywhere-opensource-src-4.6.3/mkspecs/qws/linux-x86-g++.
sudo apt-get install tslib
sudo apt-get install libts-dev
OpenSSL support cannot be enabled due to functionality tests!
Turn on verbose messaging (-v) to ./configure to see the final report.
If you believe this message is in error you may use the continue
switch (-continue) to ./configure to continue.
sudo apt-get install openssl
sudo apt-get install libssl-dev
四、编译和安装
make;make install
五、QVFB的安装
在configure的时候如果没有打开-nomake tools则在配置qt的过程中会自动生成qvfb.pro项目文件和Makefile,所以只需要进入tools/qvfb目录下进行make就OK
如果打开-nomake tools的话,需建立其项目文件和Makefile:
1.进入qvfb源码目录:
# cd .....-opensource-src-4.6.3/tools/qvfb
2.执行qmake生成pro工程:
#......... -opensource-src-4.6.3/bin/qmake -project
3.执行qmake生成Makefile
#...........-opensource-src-4.4.3/bin/qmake
4.编译make
# make 六、OVER
----------------------------------------------------------
下面是从网上转载的,如有冒犯请多原谅
QT-Embedded-4.6.3移植到MIPSEL开发板
需要准备的资源
交叉编译工具链:君正公司提供的交叉编译工具链mipseltools-gcc412-glibc261
下载地址:ftp://ftp.ingenic.cn/3sw/01linux/00toolchain/mipseltools-gcc412-
glibc261.tar.bz2
如果无法运行可以下载源码自己编译,君正公司已经配置好了,安装很容易的,直接configure,然后make就好了
下载地址:ftp://ftp.ingenic.cn/3sw/01linux/00toolchain/jz-crosstools-
src.tar.bz2
PS:系统的GCC版本最好换成和工具链一样的版本,不然后面编译QT时可能出现未知的错误
QT源代码包,需要两个版本:
Qt SDK for Linux/X11 32-bit
下载地址:http://get.qt.nokia.com/qtsdk/qt-sdk-linux-x86-opensource-
2010.03.bin
这个是官方提供的二进制安装包,用来产生Qt Creator,Qt designer等一系列工具。
QT Embedded for linux
下载地址:http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-
4.6.3.tar.gz
嵌入式版本的QT;
安装:
1:先安装PC版本的QT
这个没什么好说的,进入放置Qt SDK的文件夹内,直接在终端输入
"./qt-sdk-linux-x86-opensource-2010.03.bin" (不包括引号,下同)
2:把下载下来的嵌入式版本的qt解压缩。命令:tar zxvf qt-everywhere-opensource-src-4.6.3;
建两个个文件夹qtopiaX86和qtopiaMIPS,在这两个文件夹里面,都再建两个文件夹source,target;
将解压出来的所有文件分别放入对应文件夹的source文件夹当中。
3:安装X86版本(这个版本主要用来编译X86版本的嵌入式程序,qvfb(PC上模拟嵌入式平台的程序)只能模拟X86版本的嵌入式环境)
1)
进入/.../qtopiaX86/target当中(一定不要再存放源文件的source文件夹中configure,,会出现未知错误后面的make
和make install一样),输入命令 “/.../qtopiaX86/source/configure -qt-kbd-tty
-no-glib
-no-xmlpatterns
-qt-kbd-qvfb
-no-javascript-jit
-opensource
-no-fast
-qt-mouse-pc
-no-largefile
-qt-mouse-qvfb
-no-sql-QtSql
-no-qt3support
-no-webkit
-no-mmx
-no-3dnow
-no-sse
-no-sse2
-no-libtiff
-no-libpng
-no-libmng
-no-libjpeg
-no-openssl
-no-opengl
-no-nis
-qt-gfx-qvfb
-no-cups
-no-iconv
-no-dbus
-embedded x86 //注意
-arch x86 //注意
-no-armfpa
-little-endian
-qt-freetype
-nomake tools
-nomake docs
-depths 2,8,16,32
-no-script
-xplatform qws/linux-x86-g++ //注意选择对应的编译平台
-no-scripttools
-v"
红字部分,一定要写,其他的可以根据自己的实际情况选择;
PS:这部分有时候会出现比如: -nomake tools : unknown argument.
这里QT有个BUG,出问题的往往不是-nomake tools
而是它的上一个选项,这个问题曾经困扰我很久,因为我怎么看也没写错啊,为什么就报错呢?呵呵。另外网上有资料说编译X86的时候选择的一个选项-qt-
kbd-pc,但经过我的实践,这个选项一选择,其他的几个-qt-mouse-*和-qt-kbd-*就会出现unknown
argument错误。
上面这些可以写成一个脚本,免得每次都要输入。
脚本的形式如下:
#!/bin/sh
option="-qt-kbd-tty
-no-glib
-no-xmlpatterns
-qt-kbd-qvfb
-qvfb
-no-javascript-jit
-opensource
-no-fast
-qt-mouse-pc
-no-largefile
-qt-mouse-qvfb
-no-sql-QtSql
-no-qt3support
-no-webkit
-no-mmx
-no-3dnow
-no-sse
-no-sse2
-no-libtiff
-no-libpng
-no-libmng
-no-libjpeg
-no-openssl
-no-opengl
-no-nis
-qt-gfx-qvfb
-no-cups
-no-iconv
-no-dbus
-embedded x86
-arch x86
-no-armfpa
-little-endian
-qt-freetype
-nomake tools
-nomake docs
-depths 2,8,16,32
-no-script
-xplatform qws/linux-x86-g++
-no-scripttools
-v" /opt/qtopiaX86/source/configure $option
这个形式也是我摸索了很久才找出来的正确写法哦,网上貌似很少有这方面说明的,大概是那些大牛不屑于说吧呵呵。反正之前我按网上一些资料的写法如:
# ./configure \
-prefix /usr/local/Trolltech/QtEmbedded-4.6.2-arm \ -opensource \
-confirm-license \
-release -shared \
-embedded arm \
-xplatform qws/linux-arm-g++ \
-depths 16,18,24 \
-fast \
…………
全部都不行。
2)configure之后,make这步很花时间,大概要几十分钟到几个小时吧,看机器配置了。
3)完成后make install
4.编译tslib触摸板库
进行如下操作:
“/.autogen” #生成configure文件
“ echo "ac_cv_func_malloc_0_nonnull=yes" ”> #为了防止出现undefined
reference to `rpl_malloc' 错误
/.configure --host=mipsel-linux-gcc --prefix=/usr/local
make
maek install
5. 安装MIPSEL版本的QT
1)
编辑/.../qtopiaMIPS/source/mkspecs/qws/linux-mips-g++/qmake.conf。将其中
mipsel-linux-*形式的语句全部改为mipsel-linux-*;
2)进入/.../qtopiaMIPS/target目录,输入/.../qtopiaMIPS/source/configure
-xplatform qws/linux-mips-g++ -embedded mips
configure的配置如下:
#!/bin/sh
option="-qt-kbd-tty -qt-gfx-linuxfb -no-gfx-transformed
-no-gfx-multiscreen -qt-mouse-pc -no-gfx-qvfb -no-gfx-vnc -qt-kbd-tty
-qt-gfx-linuxfb -no-gfx-qvfb -no-gfx-vnc -qt-mouse-tslib
-no-glib
-prefix /usr/local/Trolltech/QtEmbedded-4.6.3-mips
-no-xmlpatterns -no-javascript-jit -opensource
-no-fast
-no-largefile
-no-sql-QtSql -no-qt3support
-no-webkit
-qt-freetype -no-libtiff -no-libpng -no-libmng -no-libjpeg -no-openssl
-no-opengl
-no-nis -no-cups -no-iconv -no-dbus
-embedded mips
-xplatform qws/linux-mips-g++ -arch mips -no-armfpa -little-endian
-qt-freetype -nomake tools -nomake docs -nomake demos
-nomake examples
-depths 8,16,24,32 -no-script
-no-scripttools
-no-openvg
-no-fontconfig
-no-mitshm
-no-xkb
-I /usr/local/Trolltech/tslib-1.4/include
-L /usr/local/Trolltech/tslib-1.4/lib
-v"
/opt/qtopia4.6.3/source/configure $option
PS:”-qt-kbd-tty ……-no-gfx-vnc “这一段一定要写在一行,否则会出现unknown argument错误;
make
make install
编译完成后把整个lib文件夹复制到你的NFS目录下的对应的MIPS编译安装的目录下比如NFS的目录是/home/4705s/而编译MIPS版QT时的安装目录是/usr/local/Qtopia,那么要在NFS目录下建立同样的路径,然后把lib文件夹放入。
同样的,把上面编译好的tslib整个移到对应的路径下。
修改/etc/profile
增加如下语句
export TSLIB_ROOT=/usr/tslib
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb
export TSLIB_TSDEVICE=/dev/ts
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export QTDIR=/home/4750fs/usr/local/Trolltech/QtEmbedded-4.6.3-mips/
export QWS_SIZE="800x480"
export QWS_MOUSE_PROTO="Tslib:/dev/ts"
export LD_LIBRARY_PATH=/usr/tslib/lib
修改tislib下的/etc/ts.conf文件
增加一行“module_raw jz”(大家根据自己的情况修改,每个人的开发板不同,情况也不一样)
校准屏幕:
运行tslib的bin文件夹下的ts_calibrate,输入命令./ts_calibrate -qws会出现一个光点,点五次校准屏幕
PS:这一步一定要做,我一开始没有校准,搞得触摸屏用不了,弄得我还以为前面步骤有错,又重做了一次,浪费不少时间。
我的系统是ubuntu8.0.4.
gcc 4.2.3
arm-linux-gcc 3.4.1 这是我的基本环境。arm-linux-gcc 3.4.1 网上有许多教程,写的十分详细,就不多写了.
那如果上面的环境都有了那么就应该安装tslib1.4了. 首先在主文件夹下面把tslib1.4解压出来.然后进入tslib文件夹.之后
$export CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc
$exportCXX=/usr/local/arm/3.4.1/bin/arm-linux-g++
这两个是环境变量,不加不行阿.
ls查看有一个名字叫autugen.sh的东西.在终端运行
$source autugen.sh
或者
$./autugen
运行完呢 文件夹中会出现configure 这个文件.之后就要运行它了.
$./configure
--prefix=/usr/local/tslib --host=/usr/local/arm/3.4.1/bin/arm-linux-gcc
--cache-file=$ARCH_tslib.cache --enable-inputapi=no
后面那一大长串呢 是安装的不加是不可以的。至于为什么不可以呢?我还不知道,知道了以后在些日志把。
下面解释一下这个参数
--prefix=/usr/local/tslib 是告诉电脑需要把tslib安装在/usr/local/tslib这里。
--host=/usr/local/arm/3.4.1/bin/arm-linux-gcc 这个是指定交叉编译器,我的arm-linux-3.4.1安装在了/usr/local/这里面.
-cache-file=$ARCH_tslib.cache --enable-inputapi=no 这个是环境变量,你就找这些就可以拉,不用知道它是干什么的,问我我也不告诉你,因为我也不知道,哈哈.
上面那个运行完了呢就该接下来的步骤拉.
$make
$sudo make install
ok拉,现在tslib1.4就已经装完了.
接下来呢就开始进入正题了开始安装qt-everywhere-opensource-src-4.6.0了.
我的qt-everywhere-opensource-src-4.6.0.tar.gz是在主文件夹中.就是 你
$cd ~ 然后那个位置,接下来解压这个包包.
~$tar zxvf qt-everywhere-opensource-src-4.6.0.tar.gz
~$cd qt-everywhere-opensource-src-4.6.0
接下来就应该configure 了.现在开始配置参数了
./configure
-prefix /usr/local/qte-arm -debug-and-release -qt3support -qt-zlib
-qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -make libs -nomake
examples -nomake demos -nomake docs -no-cups -iconv -xplatform
qws/linux-arm-g++ -embedded arm -little-endian -qt-freetype -depths
8,16,24,32 -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-qvfb -no-gfx-vnc
-no-gfx-multiscreen -no-dbus -qt-sql-sqlite -qt-kbd-qvfb -qt-kbd-tty
-qt-mouse-pc -no-glib -plugin-mouse-tslib -I/usr/local/tslib/include
-L/usr/local/tslib/lib -D__ARM_ARCH_5TEJ__
这个参数要全部输入进去复制+粘贴,你懂的哈.
但是你要作一下修改的啊,因为我们的己其实不同的阿.
先给你些解释:(configure后面参数的意义)
./configure
-prefix /usr/local/qte-arm (强制安装在此路径)
-debug-and-release 编译和链接两个版本的Qt
-qt3support 支持QT3
-qt-zlib 捆绑使用的Qt的zlib。
-qt-libtiff 使用Qt的捆绑的libtiff。
-qt-libpng 使用Qt的捆绑的的libpng。
-qt-libmng 使用Qt的捆绑的libmng。
-qt-libjpeg 使用Qt的捆绑的的libjpeg。
-make libs 新增 libs
-nomake examples 排除 。。
-nomake demos 排除。。
-nomake docs 排除。。
-no-cups 不要编译CUPS的支
-iconv 编译iconv拥有支持(3)
-xplatform qws/linux-arm-g++
-embedded arm
-little-endian
-qt-freetype
-depths 8,16,24,32
-qt-gfx-linuxfb
-no-gfx-transformed
-no-gfx-qvfb
-no-gfx-vnc
-no-gfx-multiscreen
-no-dbus
-qt-sql-sqlite
-qt-kbd-qvfb
-qt-kbd-tty
-qt-mouse-pc
-no-glib
-plugin-mouse-tslib -I/usr/local/tslib/ -L/usr/local/tslib/lib -D__ARM_ARCH_5TEJ__
(包含路径) (库路径) (定义的预处理器)
注意拉:
-plugin-mouse-tslib 是说你需要用到tslib这个插件.(我理解的好像不太准确吧,呵呵不要笑话我水平有限)
-I/usr/local/tslib/lib 这个是你tslib.h这个头文件的包含路径
-L/usr/local/tslib/lib 这个是你的库的路径
-D__ARM_ARCH_5TEJ__ 这个是定义的预处理器,唉百度找出来的,不太理解那几个字木的含义哈.
(如果你的configure一直出错误那么就看最下面那一大部分东西,然后找有用的自己慢慢理解哈.)
configure完了之后,就该
$make了
这时候中间出了错误.
我的系统是ubuntu8.0.4.
gcc 4.2.3
arm-linux-gcc 3.4.1 这是我的基本环境。arm-linux-gcc 3.4.1 网上有许多教程,写的十分详细,就不多写了.
那如果上面的环境都有了那么就应该安装tslib1.4了. 首先在主文件夹下面把tslib1.4解压出来.然后进入tslib文件夹.之后
$export CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc
$exportCXX=/usr/local/arm/3.4.1/bin/arm-linux-g++
这两个是环境变量,不加不行阿.
ls查看有一个名字叫autugen.sh的东西.在终端运行
$source autugen.sh
或者
$./autugen
运行完呢 文件夹中会出现configure 这个文件.之后就要运行它了.
$./configure --prefix=/usr/local/tslib --host=/usr/local/arm/3.4.1/bin/arm-linux-gcc --cache-file=$ARCH_tslib.cache --enable-inputapi=no
后面那一大长串呢 是安装的不加是不可以的。至于为什么不可以呢?我还不知道,知道了以后在些日志把。
下面解释一下这个参数
--prefix=/usr/local/tslib 是告诉电脑需要把tslib安装在/usr/local/tslib这里。
--host=/usr/local/arm/3.4.1/bin/arm-linux-gcc 这个是指定交叉编译器,我的arm-linux-3.4.1安装在了/usr/local/这里面.
-cache-file=$ARCH_tslib.cache --enable-inputapi=no 这个是环境变量,你就找这些就可以拉,不用知道它是干什么的,问我我也不告诉你,因为我也不知道,哈哈.
上面那个运行完了呢就该接下来的步骤拉.
$make
$sudo make install
ok拉,现在tslib1.4就已经装完了.
接下来呢就开始进入正题了开始安装qt-everywhere-opensource-src-4.6.0了.
我的qt-everywhere-opensource-src-4.6.0.tar.gz是在主文件夹中.就是 你
$cd ~ 然后那个位置,接下来解压这个包包.
~$tar zxvf qt-everywhere-opensource-src-4.6.0.tar.gz
~$cd qt-everywhere-opensource-src-4.6.0
接下来就应该configure 了.现在开始配置参数了
./configure -prefix /usr/local/qte-arm -debug-and-release -qt3support -qt-zlib -qt-libtiff -qt-libpng -qt-libmng -qt-libjpeg -make libs -nomake examples -nomake demos -nomake docs -no-cups -iconv -xplatform qws/linux-arm-g++ -embedded arm -little-endian -qt-freetype -depths 8,16,24,32 -qt-gfx-linuxfb -no-gfx-transformed -no-gfx-qvfb -no-gfx-vnc -no-gfx-multiscreen -no-dbus -qt-sql-sqlite -qt-kbd-qvfb -qt-kbd-tty -qt-mouse-pc -no-glib -plugin-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib -D__ARM_ARCH_5TEJ__
这个参数要全部输入进去复制+粘贴,你懂的哈.
但是你要作一下修改的啊,因为我们的己其实不同的阿.
先给你些解释:(configure后面参数的意义)
./configure
-prefix /usr/local/qte-arm (强制安装在此路径)
-debug-and-release 编译和链接两个版本的Qt
-qt3support 支持QT3
-qt-zlib 捆绑使用的Qt的zlib。
-qt-libtiff 使用Qt的捆绑的libtiff。
-qt-libpng 使用Qt的捆绑的的libpng。
-qt-libmng 使用Qt的捆绑的libmng。
-qt-libjpeg 使用Qt的捆绑的的libjpeg。
-make libs 新增 libs
-nomake examples 排除 。。
-nomake demos 排除。。
-nomake docs 排除。。
-no-cups 不要编译CUPS的支
-iconv 编译iconv拥有支持(3)
-xplatform qws/linux-arm-g++
-embedded arm
-little-endian
-qt-freetype
-depths 8,16,24,32
-qt-gfx-linuxfb
-no-gfx-transformed
-no-gfx-qvfb
-no-gfx-vnc
-no-gfx-multiscreen
-no-dbus
-qt-sql-sqlite
-qt-kbd-qvfb
-qt-kbd-tty
-qt-mouse-pc
-no-glib
-plugin-mouse-tslib -I/usr/local/tslib/ -L/usr/local/tslib/lib -D__ARM_ARCH_5TEJ__
(包含路径) (库路径) (定义的预处理器)
注意拉:
-plugin-mouse-tslib 是说你需要用到tslib这个插件.(我理解的好像不太准确吧,呵呵不要笑话我水平有限)
-I/usr/local/tslib/lib 这个是你tslib.h这个头文件的包含路径
-L/usr/local/tslib/lib 这个是你的库的路径
-D__ARM_ARCH_5TEJ__ 这个是定义的预处理器,唉百度找出来的,不太理解那几个字木的含义哈.
(如果你的configure一直出错误那么就看最下面那一大部分东西,然后找有用的自己慢慢理解哈.)
configure完了之后,就该
$make了
这时候中间出了错误.
---------------------------------------------------------------------------------------------------------------
QFontEngineFT::init(QFontEngine::FaceId, bool, QFontEngineFT::GlyphFormat)':
text/qfontengine_ft.cpp:696: warning: initialization to `int' from `qreal'
text/qfontengine_ft.cpp:696: warning: argument to `int' from `qreal'
{standard input}: Assembler messages:
{standard input}:1587: Error: register or shift expression expected -- `orr r3,r2,lsl#16'
{standard input}:1597: Error: register or shift expression expected -- `orr r2,r3,lsl#16'
{standard input}:3206: Error: register or shift expression expected -- `orr r3,r1,lsl#16'
{standard input}:3219: Error: register or shift expression expected -- `orr r3,ip,lsl#16'
make[1]: *** [.obj/release-shared-emb-arm/qfontengine_ft.o] 错误 1
make[1]:正在离开目录 `/home/darkhero/src/qt-embedded-linux-opensource-src-4.6.0-arm/src/gui'
---------------------------------------------------------------------------------------------------------------
如果你没有这个错误而是出现了别的错误,那么就自己解决把,如果和我一样,那么就
把~/qt-everywhere-opensource-src-4.6.0/src/3rdparty/freetype/include/freetype/config/ftconfig.h 这个文件的第330行改一下
原来是:
"orr %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
改成:
"orr %0, %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
如果没有错误:说明你人品爆发拉.
然后继续make,
最后$sudo make install
就ok啦.
这个安装完了.
下面把我一个上午时间的劳动成果拿出来给大家,就是
$./configure -help
出来一大堆英文,介绍qt-everywhere-opensource-src-4.6.0中configure后面的参数,我把3分之2的翻译了出来,我觉得也就能用到这么多,现在给大家,如果有用的上的地方就看看.
http://blog.csdn.net/edjk552766966/archive/2010/04/18/5500141.aspx
--------------------------------------------------------------------------------------------------
Qtopia-Core-opensource-4.2.2移植的准备工作
http://www.cublog.cn/u/27904/showart_237253.html