分类:
2008-01-04 17:50:20
1) export环境变量
export QTDIR=/qte/qte-
export QTEDIR=$QTDIR
export PATH=$QTDIR/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
2) 运行./configure
cd $QTDIR
./configure -depths 4,8,16 -no-ipv6 -no-cups -no-pch -qvfb -embedded arm -qt-gif -thread -qt-mouse-linuxtp
3) 复制uic命令
cp /qte/qte-
4) 为了支持触摸屏(和IPAQ兼容的)
在src/embedded/qmouselinuxtp_qws.h中加入
#define QWS_MOUSE_IPAQ
#define QWS_MOUSE_IPAQ_RAW
#define QT_QWS_IPAQ
5) 编译Qt/Embedded函数库
make sub-src
触摸屏效果不太好,需校准。
二 :采用qte-3.3.4+tslib-1.3 的方式
1.编译tslib-1.3
可参考下面文章,很详细
http://blog.chinaunix.net/u1/33412/showart_282396.html
将生成的库文件包括lib下的(libts.so)和插件plugins里的校准库 全部考到qte3.3.4/lib里 头文件考到qte3.3.4/include里
同时将编译QT-X11得到的uic考到qte-3.3.4/bin里。
2.给qte-3.3.4打补丁使其支持tslib
网上下的补丁文件有点问题用patch命令打补丁不完全,于是手工打补丁
按照patch的方法,增加两个文件到src/embedded/下,修改相应文件src/embedded/qmousedriverfactory_qws.cpp, src/embedded/qt_embedded.pri,configure
3.交叉编译
export QTDIR
./configure –embedded arm –thread –qvfb –qconfig-large –qt-mouse-tslib –I$QTDIR/include –L$QTDIR/lib –lts
这里需要强制指定tslib库位置,否则,会报错找不到libts。
结果make仍然报错,说libts不兼容。
/usr/bin/ld: cannot find –lts
export QTDIR=/qte-3.3.4
export LD_LIBRARY_PATH=$QTDIR/lib
export QWS_MOUSE_PROTO=tslib:/dev/tsraw0
export TSLIB_TSDEVICE=/dev/sraw0
export TSLIB_CONSOLEDEVICE=none
export TSLIB_FBDEVICE=/dev/fb0
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=lib/plugins
export TSLIB_TSEVENTTYPE="H3600"
export TSLIB_CALIBFILE=/etc/pointercal
5.调试
chinaunix网友2010-07-27 17:12:15
按你方法,打完补丁后,编译QTE还是报错:CANNOT FIND LTS,请帮忙解决,谢谢!EMAIL:lypadsl@163.com
chinaunix网友2010-07-27 17:12:15
按你方法,打完补丁后,编译QTE还是报错:CANNOT FIND LTS,请帮忙解决,谢谢!EMAIL:lypadsl@163.com
chinaunix网友2008-10-24 16:05:30
按你的方法,在板子上执行程序出现如下信息: QWSTSLibMouseHandler: handler init tslib /dev/ts QWSTSLibMouseHandlerPrivate: init /dev/ts openTs: cast device openTs: device /dev/ts openTs: device /dev/ts openTs: m_ts 0x26750 不知道为什么,能否帮忙解决一下,谢谢 邮箱:imho@163.com
chinaunix网友2008-10-24 16:05:30
按你的方法,在板子上执行程序出现如下信息: QWSTSLibMouseHandler: handler init tslib /dev/ts QWSTSLibMouseHandlerPrivate: init /dev/ts openTs: cast device openTs: device /dev/ts openTs: device /dev/ts openTs: m_ts 0x26750 不知道为什么,能否帮忙解决一下,谢谢 邮箱:imho@163.com