tslib-1.4的问题
在为QTE4.5.1打上补丁后,我编译通过了,但是板上运行./helloworld -qws终端就会报如下的错误,呵呵,请问大家有没有遇见过,请指点,感谢
GCC-4.1.1 Could not read calibration: "/etc/pointercal" No raw modules loaded. QWSTslibMouseHandlerPrivate: ts_config() failed with error: 'No such file or directory' Please check your tslib installation 根据意思来看的话应该是没有校准的配置文件,那后面几句是什么意思? 运行tslib-1.4/bin/ts_calibrate时则会出现以下错误 No raw modules loaded. ts_config: No such file or directory 点击触摸屏没有反应 是我的环境变量出问题了吗? 环境变量如下: export LD_LIBRARY_PATH=/nand1/tslib-1.4/lib:/lib:/nand1/Trolltech/QtEmbeddedARMT export QTDIR=/nand1/Trolltech/QtEmbeddedARMTSLib/ export PATH=/bin:$QTDIR/bin:/nand1/tslib-1.4/bin:$PATH export set QWS_MOUSE_PROTO=Tslib:/dev/event1 export QWS_DISPLAY="LinuxFb:mmWidth50:mmHeight70:0" export QWS_DISPLAY=LinuxFb:/dev/fb2 export QWS_SIZE=480x272 export QT_ONSCREEN_PAINT=0 export QWS_SW_CURSOR=1 export QT_QWS_FONTDIR=/nand1/Trolltech/QtEmbeddedARMTSLib/lib/fonts export QT_QWS_PLUGINDIR=/nand1/Trolltech/QtEmbeddedARMTSLib/plugins export TSLIB_TSDEVICE=/dev/event1 export TSLIB_CONFFILE=/nand1/tslib-1.4/etc/ts.conf export TSLIB_FBDEVICE=/dev/fb2 export TSLIB_CALIBFILE=/etc/pointercal export TSLIB_PLUGINDIR=/nand1/tslib-1.4/lib/ts 我猜想是不是export TSLIB_CONFFILE=/nand1/tslib-1.4/etc/ts.conf 这个文件找不到? 大家帮我想想办法 |
---|
顶端
Posted: 2009-06-16 11:03 |
[楼 主]
|
coyote
|
小 中 大
引用 推荐 编辑 只看 复制
我的是
export T_ROOT=/opt/tslib export TSLIB_CONSOLEDEVICE=none export TSLIB_FBDEVICE=/dev/fb0 export TSLIB_TSDEVICE=/dev/input/event0 export TSLIB_PLUGINDIR=$T_ROOT/lib/ts export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf export TSLIB_CALIBFILE=$T_ROOT/etc/pointercal export QTDIR=/opt/qt4.5 export LD_LIBRARY_PATH=$QTDIR/lib:$OPIEDIR/lib:/opt/tslib/lib export PATH=$QTDIR/lib:$OPIEDIR/bin:$PATH export QT_QWS_FONTDIR=/opt/qt4.5/lib/fonts export QWS_MOUSE_PROTO='TSLIB:/dev/input/event0' export QWS_DISPLAY="LinuxFb:mmWidth320:mmHeight200:0" |
||
---|---|---|---|
顶端
Posted: 2009-06-16 11:09 |
1 楼
|
miaoronghua
|
小 中 大
引用 推荐 编辑 只看 复制
从你这里我看不出什么啊,我的问题好奇怪啊。。。。。。。。。
|
||
---|---|---|---|
顶端
Posted: 2009-06-16 11:30 |
2 楼
|
miaoronghua
|
小 中 大
引用 推荐 编辑 只看 复制
我知道可能是什么问题了,是tslib-1.4/etc/ts.config的配置问题,呵呵
我看了一下里面的内容,有h3600,input等等,现在我的触摸屏设备是/dev/event1或者/dev/event0我郁闷了,ts.config里面没有event参数啊,选用input 跑程序时,报SIGSEGV错,晕了,大家帮帮忙啊 |
||
---|---|---|---|
顶端
Posted: 2009-06-16 12:40 |
3 楼
|
miaoronghua
|
小 中 大
引用 推荐 编辑 只看 复制
我在/dev/下建立了一个input目录,然后做了链接 ln -s /dev/event1 /dev/input/event1, ln -s /dev/event0 /dev/input/event0,修改ts.config 选用input项,但是还是会有
/nand1/tslib-1.4/bin> ./ts_calibrate SIGSEGV 大家帮帮帮忙吧 |
||
---|---|---|---|
顶端
Posted: 2009-06-16 15:35 |
4 楼
|
shwhg
|
小 中 大
引用 推荐 编辑 只看 复制
请把你的/nand1/tslib-1.4/etc/ts.conf文件的内容贴出来。
同时请把你/nand1/tslib-1.4/lib/ts目录下的文件列表贴出来看看。 ts.conf文件中应该有一行 module_raw input /nand1/tslib-1.4/lib/ts目录下应该有个文件叫 input.so |
||
---|---|---|---|
顶端
Posted: 2009-06-16 16:15 |
5 楼
|
miaoronghua
|
小 中 大
引用 推荐 编辑 只看 复制
好吧,我搞的仔细一点,请大家帮帮忙
ts.conf的内容是 # Uncomment if you wish to use the linux input layer event interface module_raw input # Uncomment if you're using a Sharp Zaurus SL-5500/SL-5000d # module_raw collie # Uncomment if you're using a Sharp Zaurus SL-C700/C750/C760/C860 # module_raw corgi # Uncomment if you're using a device with a UCB1200/1300/1400 TS interface # module_raw ucb1x00 # Uncomment if you're using an HP iPaq h3600 or similar # module_raw h3600 # Uncomment if you're using a Hitachi Webpad # module_raw mk712 # Uncomment if you're using an IBM Arctic II # module_raw arctic2 module pthres pmin=1 module variance delta=30 module dejitter delta=100 module linear /nand1/tslib-1.4/lib/ts目录下应该的确有个文件叫 input.so的库 同时我做了mknod /dev/input/event1 c 13 65 cat /dev/inpput/event1 点击触摸屏终端有打印输出 我的/etc/profile中的内容如下 #!/bin/sh DISPLAY=unit:100.100 HOME=/tmp SHELL=/bin/sh mknod /dev/input/event1 c 13 65 export T_ROOT=/nand1/tslib-1.4 export TSLIB_CONSOLEDEVICE=none export TSLIB_FBDEVICE=/dev/fb2 export TSLIB_TSDEVICE=/dev/input/event1 export TSLIB_PLUGINDIR=$T_ROOT/lib/ts export TSLIB_CONFFILE=$T_ROOT/etc/ts.conf export TSLIB_CALIBFILE=$T_ROOT/etc/pointercal export QTDIR=/nand1/Trolltech/QtEmbeddedARMTSLib export LD_LIBRARY_PATH=$QTDIR/lib:/nand1/tslib-1.4/lib:$LD_LIBRARY_PATH export PATH=$QTDIR/bin:$T_ROOT/bin:$PATH export QT_QWS_FONTDIR=$QTDIR/lib/fonts export QWS_MOUSE_PROTO='Tslib:/dev/input/event1' export QWS_DISPLAY="LinuxFb:mmWidth320:mmHeight200:0" export QWS_SIZE=480x272 ./nand1/tslib-1.4/bin/ts_calibrate 报SIGSEGV错,请大家帮帮忙 谢谢 同时cat /proc/bus/input/devices I: Bus=0000 Vendor=0000 Product=0000 Version=0001 N: Name="telechips keypad" P: Phys=tcc-keypad S: Sysfs=/class/input/input0 U: Uniq= H: Handlers=kbd event0 B: EV=3 B: KEY=ffe I: Bus=0000 Vendor=0000 Product=0000 Version=0001 N: Name="tcc-tsc2003-ts" P: Phys=tsc2003/input0 S: Sysfs=/class/input/input1 U: Uniq= H: Handlers=mouse0 event1 B: EV=b B: KEY=400 0 0 0 0 0 0 0 0 0 0 B: ABS=1000003 同时在内核源码的document/device.txt中 13 char Input core 0 = /dev/input/js0 First joystick 1 = /dev/input/js1 Second joystick ... 32 = /dev/input/mouse0 First mouse 33 = /dev/input/mouse1 Second mouse ... 63 = /dev/input/mice Unified mouse 64 = /dev/input/event0 First event queue 65 = /dev/input/event1 Second event queue 我实在没想法了,理论上应该对啊 |
||
---|---|---|---|
顶端
Posted: 2009-06-16 18:16 |
6 楼
|
miaoronghua
|
小 中 大
引用 推荐 编辑 只看 复制
补充:
:/nand1/tslib-1.4/lib/ts> ls arctic2.la dejitter.la linear.la pthres.la arctic2.so dejitter.so linear.so pthres.so collie.la h3600.la linear_h2200.la ucb1x00.la collie.so h3600.so linear_h2200.so ucb1x00.so corgi.la input.la mk712.la variance.la corgi.so input.so mk712.so variance.so 同时: alb ndda tty16 tty47 apm_bios ndda1 tty17 tty48 bl ndda2 tty18 tty49 console ndda3 tty19 tty5 controlC0 ndda4 tty2 tty50 dsp null tty20 tty51 dsp0 pcmC0D0c tty21 tty52 event0 pcmC0D0p tty22 tty53 event1 ptmx tty23 tty54 fb0 pts tty24 tty55 fb1 pwr tty25 tty56 fb2 ram0 tty26 tty57 full ram1 tty27 tty58 gadget random tty28 tty59 i2c-0 rtc tty29 tty6 i2c-1 rtc0 tty3 tty60 input shm tty30 tty61 intr-mb spidev0.0 tty31 tty62 intr-sc spidev1.0 tty32 tty63 intr-test tcc-uart0 tty33 tty7 kmem tcc-uart1 tty34 tty8 kmsg tcc-uart2 tty35 tty9 loop0 tcc-uart3 tty36 ttySAC0 loop1 timer tty37 ttySAC1 loop2 tsif tty38 ttySAC2 loop3 tty tty39 ttySAC3 loop4 tty0 tty4 ttySACX loop5 tty1 tty40 urandom loop6 tty10 tty41 usb1 loop7 tty11 tty42 usbdev1.1_ep00 mem tty12 tty43 usbdev1.1_ep81 mice tty13 tty44 vcs mixer tty14 tty45 vcsa mouse0 tty15 tty46 zero 在/dev/下有event0和event1 之后我建了input目录,之后又创建了节点mknod /dev/input/event1 c 13 65 帮帮忙啊,小弟完全晕了 |
||
---|---|---|---|
顶端
Posted: 2009-06-16 18:30 |
7 楼
|
kjpioo
|
小 中 大
引用 推荐 编辑 只看 复制
我给你找到原因了,确定的原因,呵呵:)
你把 /root/qt/tslib/etc/ts.conf 的 # Uncomment if you wish to use the linux input layer event interface module_raw input 中module_raw input前面的空格去掉就可以了。 这个问题我验证过。有兴趣的话具体你看tslib的源代码吧。 我的blog是kjpioo.cublog.cn。欢迎和我交流哈。。 |
||
---|---|---|---|
顶端
Posted: 2009-06-20 21:36 |
8 楼
|
kjpioo
|
小 中 大
引用 推荐 编辑 只看 复制
http://blog.chinaunix.net/u2/61322/showart_1357736.html
http://blog.chinaunix.net/u2/61322/showart_1313716.html 这是我之前碰到这个问题的记录。今天我把你的问题验证了一下。 |
---|