您的位置:首页 > 编程语言 > Qt开发

QtEmbedded-4.7.3-arm 移植、触摸屏移植、去掉鼠标箭头

2017-10-03 14:59 337 查看
一、到网站上面下载如下两个源码包.tar.gz(也可以是其它格式)。
    ①tslib-1.4.tar.gz②qt-everywhere-opensource-src-4.7.3.tar.gz。
二、移植tslib。
         ㈠将下载好的两个文件放到虚拟机的某个目录,用tar –zxvf解压tslib-1.4.tar.gz。
         ㈡cd  tslib-1.4。
         ㈢./autogen.sh 用于生产configure文件。
         ㈣sudo apt-get install autoconf automake libtool 这三个工具一起用于产生Makefile。
         ㈤./configure --prefix=/usr/local/tslib/ --host=arm-linux ac_cv_func_malloc_0_nonnull=yes
         ㈥make 完成之后make install。
         ㈦修改/usr/local/tslib/etc目录下的ts.conf文件,将module_raw input前面的注释去掉。
三、编译qt-everywhere-opensource-src-4.7.3生成QtEmbedded-4.7.3-arm版本。
         ㈠用于在arm板上运行qt程序的embedded版本。
                   ①用tar –zxvf解压qt-everywhere-opensource-src-4.7.3.tar.gz。
                   ②cd qt-everywhere-opensource-src-4.7.3.tar.gz。
                   ③vi src/gui/embedded/qwscursor_qws.h添加宏定义#define QT_NO_QWS_CURSOR,使得编出来的程序没有鼠标箭头;也可以在④中添加编译选项-D QT_NO_QWS_CURSOR(或者-no-feature-QWS_CURSOR)。
                   ④在命令进行如下配置./configure -opensource -confirm-license -release -shared -embeddedarm -xplatform qws/linux-arm-g++ -depths 4,8,16,18,24,32 -fast -optimized-qmake-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-cups -no-glib -no-xcursor -no-xfixes -no-xrandr -no-xrender -no-separate-debug-info-nomake examples -nomake tools -nomake
docs -qt-mouse-tslib-I/usr/local/tslib/include -L/usr/local/tslib/lib  -D QT_QWS_CLIENTBLIT  -D__ARM_ARCH_4T__。
                   ⑤3、修改源代码:qt-everywhere-opensource-src-4.7.3/mkspecs/qws/linux-arm-g++/qmake.conf文件
         QMAKE_CC                         = arm-linux-gcc–lts
         QMAKE_CXX                       = arm-linux-g++-lts
         QMAKE_LINK                       = arm-linux-g++-lts
         QMAKE_LINK_SHLIB         = arm-linux-g++-lts
                   ⑥make 完成之后make install。安装完成后的所用文件在/usr/local/Trolltech/QtEmbedded-4.7.3-arm下面。
四、将生成的安装文件放到开发板的相同目录下(没有目录就创建)。也可以先执行步骤五,然后在板子上跑一个程序,看差什么文件就拷贝什么文件。
五、在开发版进行配置。
                   在/etc/profile文件末尾添加如下配置。

export TSLIB_ROOT=/usr/local/tslib
export TSLIB_TSDEVICE=/dev/input/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_CONSOLEDEVICE=none
继续添加如下配置
export  QTDIR=/usr/local/Trolltech/QtEmbedded-4.7.3-arm
export QT_QWS_FONTDIR=$QTDIR/lib/fonts     /*QT字体路径*/
export QT_PLUGIN_PATH=$QTDIR/plugins       /*QT插件路径*/
export QWS_MOUSE_PROTO=Tslib:/dev/input/event0
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TSLIB_ROOT/lib:$QTDIR/lib:$QTDIR/plugins/imageformats


/*QT鼠标关联设备文件*(前面如果定义了NO_QWS_CURSOR 则不会出现鼠标箭头,但可以通过tslib关联,如果编译源码配置了触屏,则就可以触屏,且不会有鼠标箭头),前面配出的版本支持触屏。*/
注意TSLIB_TSDEVICE、QWS_MOUSE_PROTO指定的设备与具体开发板内核相关,可能与上面不同,可以到/dev目录下查看。
  重启开发板,在/usr/local/tslib/bin 目录下,输入./ts_calibrate,出现tslib的触摸屏五点校准画面,至此,QtEmbedded-4.7.3-arm的安装移植成功完成。(刚移植过来必须校准,不然只有屏幕中间那个点可点击,不能移动)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  qt 移植 鼠标