qt4.7.0移植:触摸屏问题
我把QT4.7.0移植到开发板(MINI2440),运行qt demo程序,触摸屏可以移动鼠标,但是不可以点下去,没有反应。
说明:单独的tslib测试程序是没有问题的。而且交叉编译qt的时候也加入了tslib的库和头文件,-I/usr/local/tslib/include -L/usr/local/tslib/lib。网上有人有如下观点:
注:顺便说一下,要想在qte中使用tslib,除了qte编译时加--qt-mouse-tslib参数外,还要加入环境变量如下
export QWS_MOUSE_PROTO=Tslib:/dev/event0
自:http://cgy136652.blog.163.com/blog/static/36168728200921494724567/
大家看看怎么回事。
我的qt配置参数:
./configure \
-prefix /opt/qt-arm-4.7.0 \
-opensource \
-confirm-license \
-release -shared \
-embedded arm \
-xplatform qws/linux-arm-g++ \
-depths 16,18,24 \
-fast \
-optimized-qmake \
-pch \
-qt-sql-sqlite \
-qt-libjpeg \
-qt-zlib \
-qt-libpng \
-qt-freetype \
-little-endian -host-little-endian \
-no-qt3support \
-no-libtiff -no-libmng \
-no-mmx -no-sse -no-sse2 \
-no-3dnow \
-no-qvfb \
-no-nis \
-no-cups \
-no-glib \
-no-xcursor -no-xfixes -no-xrandr -no-xrender \
-no-separate-debug-info \
-nomake tools -nomake docs \
-qt-mouse-tslib -I/usr/local/tslib/include -L/usr/local/tslib/lib
开发版环境变量:
export QPEDIR=/opt/qt-arm-4.7.0
export QTDIR=/opt/qt-arm-4.7.0
export TSLIB_ROOT=/usr/local/tslib
export PATH=$QTDIR/bin:$PATH
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_TSDEVICE=/dev/event0
export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf
export TSLIB_CALIBFILE=/etc/pointercal
export POINTERCAL_FILE=/etc/pointercal
export QWS_MOUSE_PROTO=Tslib:/dev/event0
export LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$QTDIR/lib
[解决办法]
这个问题几乎天天有人问...
[解决办法]
没有标准答案,要不就不叫嵌入式了。
比如我在我写给老外看的博客《 How to bind ti sitara sdk to your Qt Eommercial Edition》里因为TI的Matrix程序需要用到DBUS因而我需要qt-dbus,而你的系统中不一定需要。
唯一值得提的是-qt-xxx-yyy与-plugin-xxx-yyy只需要一个就行了,像我看到TI的某“老鸟”写的"-qt-mouse-tslib -plugin-mouse-tslib" 把我笑得吐了。
[解决办法]
运行一下ts_calibrate看一下在QT之前,点击 能不能正常工作
[解决办法]
打开参数-qt-mouse-linuxinput试一下
[解决办法]