Chinaunix首页 | 论坛 | 博客
  • 博客访问: 205023
  • 博文数量: 63
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 16
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-29 21:37
文章分类

全部博文(63)

文章存档

2017年(3)

2016年(3)

2014年(57)

我的朋友

分类: LINUX

2014-03-29 21:49:21

原文地址:qtopia移植笔记 作者:sunday7808

 

1. 按照《移植QTOPIA.pdf》 文档,编译 qtx11
        《Embedded QT完整编译过程》

2. 编译e2fsprogs-1.3.5

arm-linux-gcc 3.4.1编译e2fsprogs-libs的时候报告错误:
    fd.h:342: error: variable or field `__user’ declared void,

    经查gcc 3.4.1中新增类型 __user ,需要引入编译器定义头文件,在引用#include 的文档前面加上    #include ,可以解决这个编译错误。

3.
cp -r e2fs/lib/uuid    qtopia/include
cp e2fs/lib/libuuid.so*   /usr/local/arm/2.95.3/arm-linux/lib

//cp jpeg-6b/.libs/libjpeg.so.* /usr/local/arm/2.95.3/arm-linux/lib
cp jpeg-6b/.libs/libjpeg.so.* qt/lib
cp jpeg-6b/jpeglib.h           qt/include
cp jpeg-6b/.libs/libjpeg.so.* qtopia/lib
cp jpeg-6b/jpeglib.h           qtopia/include


4. 编译qtopia
make 时,报错:
.obj/release-shared/moc_fifteen.o(.text+0xa4): In function `FifteenMainWindow::staticMetaObject()':
: undefined reference to `QMainWindow::staticMetaObject()'
.obj/release-shared/moc_fifteen.o(.text+0x10c): In function `FifteenWidget::staticMetaObject()':
: undefined reference to `QWidget::staticMetaObject()'
.obj/release-shared/moc_fifteen.o(.text+0x174): In function `PiecesTable::staticMetaObject()':
: undefined reference to `QTableView::staticMetaObject()'
.obj/release-shared/moc_fifteen.o(.text+0x234): In function `PiecesTable::initMetaObject()':
: undefined reference to `QTableView::className() const'
.obj/release-shared/moc_fifteen.o(.text+0x290): In function `FifteenWidget::initMetaObject()':
: undefined reference to `QWidget::className() const'
.obj/release-shared/moc_fifteen.o(.text+0x368): In function `FifteenMainWindow::initMetaObject()':
: undefined reference to `QMainWindow::className() const'

/usr/local/arm/qt_arm/qte/lib/libqte.so: undefined reference to `QListBox::returnPressed(QListBoxItem*)'/usr/local/arm/qt_arm/qte/lib/libqte.so: undefined reference to `QPopupMenu::activatedRedirect(int)'
/usr/local/arm/qt_arm/qte/lib/libqte.so: undefined reference to `QMainWindow::toolBarPositionChanged(QToolBar*)'
【解决方案】:
       # cd qte
# export QTDIR=$PWD
对qte重新configure,make
        然后,对qtopia进行make clean;然后在make

=================================================
5. -sh: ./qpe: not found
【解决方案】busybox要采用动态编译

(1)进入busybox配置模式,
Busybox Setting-->
   build options-->
    [ ] Build BusyBox as a static binary (no shared libs) //去掉该项
    [*] Build shared libbusybox (NEW) //选中该项
(2)配置好之后,如果直接下载到板子上,会有错误:
failed to excute /linuxrc.
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,3)

【解决方案】:把库文件拷贝到board/lib下面,要拷贝的库文件见有:
    ① 从3.4.1中拷贝库文件 ld*,libc*,libm*   到wpb_rootfs/lib下面,并建立原来的连接关系
② libstdc++.so.6:从3.4.1拷贝相关文件到wpb_rootfs/lib
    libgcc_s.so.1 从3.4.1拷贝相关文件到wpb_rootfs/lib
    libdl.so.2 从3.4.1拷贝相关文件到wpb_rootfs/lib

=================================================
6.

如果找不到:libqtopia2.so.2, 则说明: 没有设置好环境变量

libuuid.so.1 从e2fs拷贝相关文件到 board/lib
libjpeg.so.62 从jpeg-6b拷贝相关文件到 board/lib
# cp e2fs/lib/libuuid.so*          board/lib/
# cp jpeg-6b/.libs/libjpeg.so*     board/lib

=================================================
7.
could not open for writing 'Settings/qpe_new.conf'
QCopChannel::send: Must construct a QApplication before using QCopChannel
【解决方案】:$HOME环境变量没有设置阿? 要设到一个可写的位置。

Can't open framebuffer device /dev/fb
:driver cannot connetc

【解决方案】:ln –s /dev/fb/0 /dev/fb0
如果不支持ln命令,则在busybox配置中添加对ln命令的支持

=================================================


===================================================
8.添加触摸屏

(1)   编译tslib:
      /qt_arm/tslib
      ./autogen.sh
      echo "ac_cv_func_malloc_0_nonnull=yes" >arm-linux.cache   //为了防止出现undefined reference to `rpl_malloc' 错误
      ./configure --host=arm-linux --cache-file=arm-linux.cache –enable-inputapi=no
      在make之前,为了支持触摸屏,这里有一点小小的修改,打开src/ts_read_raw.c文件,查看你的触摸屏驱动程序数据结构,看与ts_read_raw.c结构中的哪个一样,就将代码中的
   char *defaulttseventtype="UCB1x00";
   修改为
   char *defaulttseventtype="H3600";     //这里因为我的驱动是h3600_ts_event结构,修改为你驱动对应的结构,好了,如果你触摸屏驱动程序支持ioctrl操作,上面的configure操作中的[—enable-inputapi=no]你可以删除。好了,现在可以make了,^_^


      make
      cp qt_arm/tslib/src/.libs/libts-0.0.so.0*   qt_arm/qte/lib/
      cp qt_arm/tslib/src/.libs/libts.so          qt_arm/qte/lib/
      cp qt_arm/tslib/src/*.h                     qt_arm/qte/include/

(2) 修改文件
   vi /usr/local/arm/qt_arm/qte/src/kernel/qwsmouse_qws.cpp
    其中有3处/ect/pointercal 将其改为/tmp/pointercal
    (这里因为我的根文件系统不可写,默认的/etc下不可写,所以在校准的时候把pointercal方到了/tmp/下,这里按照你//自己校准文件的存放路径改即可,如果是可读根文件系统,就不用修改了)
目标板子最好为可写文件系统,tslib校准程序会写etc/pointercal文件,只读文件系统的话,建一个链接到/tmp目录吧

################################################

:h3600 -> input/tsraw0


################################################

(3) 在/usr/local/arm/qt_arm/qtopia/src/qt/qconfig-qpe.h的末尾加上,
这是使qt自己支持触摸屏,我也加了。
//#define QT_QWS_IPAQ
//#define QT_QWS_IPAQ_RAW


==============================================
编译修改工作
//①、vi /root/yizhi/qtopia-free-2.2.0/qtopia/mkspecs/qws
/linux-arm-g++/qmake.conf
将此行
QMAKE_LIBS_QT = -lqte
修改为
QMAKE_LIBS_QT = -lqte -luuid -ljpeg -lts
②、 如果想让Qtopia支持鼠标,需要修改/usr/local/arm/qt_arm/qtopia/src/qt/qconfig-qpe.h文件
注释如下部分
/*
#ifndef QT_NO_QWS_CURSOR
#define QT_NO_QWS_CURSOR
#endif
#ifndef QT_NO_QWS_MOUSE_AUTO
#define QT_NO_QWS_MOUSE_AUTO
#endif
#ifndef QT_NO_QWS_MOUSE_PC
#define QT_NO_QWS_MOUSE_PC
#endif
*/
============================================


    cp /usr/local/arm/qt_arm/qtopia/src/qt/qconfig-qpe.h
        /usr/local/arm/qt_arm/qte/src/tools


=====================================================================================
(4) 开始configure了 qte ,qtopia (加入:-tslib)
=====================================================================================
cd qte
./configure -qconfig qpe -no-xft -qvfb -depths 4,8,12,16 -xplatform linux-arm-g++ -system-jpeg -gif -tslib
make

cd ..

cd qtopia
./configure -edition pda -prefix /usr/local/arm/qt_arm/board -xplatform linux-arm-g++ -displaysize 320x240

make
make install


=====================================================================================
(5) 拷贝库与触摸屏校准/测试程序
=====================================================================================
      mkdir /qt_arm/board/bin/tests          
      //mkdir /qt_arm/board/lib/ts
      cp /qt_arm/tslib/tests/.libs/ts_*   /qt_arm/board/bin/tests //几个所需的测试文件,比如生成的校准文件,测试文件等
      cp /qt_arm/tslib/src/.libs/libts-0.0.so.0* /qt_arm/board/lib         //几个所需的库文件
      cp /qt_arm/tslib/src/.libs/libts.so    /qt_arm/board/lib         //几个所需的库文件
      cp /qt_arm/tslib/plugins/.libs/*.so /qt_arm/board/lib         //触摸屏插件模块库; 这些是ts.conf要用到的库文件
   把文件/qt_arm/tslib/etc/ts.conf文件拷贝到你的板子的/qt_arm/board目录下,并将moudle mousebuts 前面的#去掉
   下一步是要把board文件夹mount到板子的/tmp目录下

////////////////////////////////////////////////////
【总结】:需要拷贝的文件:
# cp e2fs/lib/libuuid.so*          board/lib/
# cp jpeg-6b/.libs/libjpeg.so*     board/lib

      # mkdir board/bin/tests   
      # cp tslib/tests/.libs/ts_*             board/bin/tests
      # cp tslib/src/.libs/libts-0.0.so.0* board/lib       
      # cp tslib/src/.libs/libts.so    board/lib       
      # cp tslib/plugins/.libs/*.so         board/lib    

# cp tslib/etc/ts.conf                  board   //将moudle mousebuts 前面的#去掉
        拷贝pointercal到board
        拷贝setnenv.sh到board
/////////////////////////////////////////////////////


=====================================================================================
(6) 运行[以下操作在目标板上进行]:
=====================================================================================
(i) 做链接
# ln -s /dev/fb/0 /dev/fb0
   //帧缓冲设备板子上为/dev/fb/0,但程序默认为/dev/fb0,所以做了一个链接/dev/fb0到/dev/fb/0

# ln -sf /dev/input/tsraw0   /dev/ts

//qtopia要打开/dev/ts,你没有这个文件, 所以 dev下边应该有触摸平的节点,
相当于, qtopia启动要找 /dev/ts, 但是你只有/dev/input/tsraw0
所以你把ts链接到你的触摸屏的文件就可以了!
我得触摸屏设备节点文件为/dev/input/tsraw0
所以,建立链接 /dev/ts 到/dev/input/tsraw0
(这里要自己针对自己板子具体的文件进行设置,要不然也会报错)

(ii)指定环境变量
      mount -t nfs 192.168.10.1:/usr/local/arm/qt_arm/board /tmp
      在你的板子上设置运行环境变量
      export HOME=/tmp
      export QTDIR=/tmp
      export QPEDIR=/tmp
      export PATH=$QPEDIR/bin:$PATH
      export QWS_MOUSE_PROTO=TPanel:/dev/input/ts0    
      export LD_LIBRARY_PATH=/tmp/lib
      export TSLIB_TSDEVICE=/dev/input/ts0 //指定触摸屏设备节点文件
      export TSLIB_CONSOLEDEVICE=none //tslib运行需要的控制台,这里就是LCD屏幕 ,设定控制台设备为none,否则默认为/dev/tty
      export TSLIB_FBDEVICE=/dev/fb0 // /dev/fb0 指定帧缓冲设备
                                      // 我的开发板上只有/dev/fb/0,所以做了一个链接 ln -s /dev/fb/0 /dev/fb0
      export TSLIB_CALIBFILE=/tmp/pointercal    //指定触摸屏校准文件pintercal的存放位置
                                                //默认是在/etc下面,可写文件系统为/etc/pointercal
      export TSLIB_CONFFILE=/tmp/ts.conf        //指定TSLIB配置文件的位置
      export TSLIB_PLUGINDIR=/tmp/lib           //指定触摸屏插件所在路径:
                                                // mousebuts.so variance.so dejitter.so linear.so的存放路径
      export POINTERCAL_FILE=/tmp/pointercal

***************************
如果为可写根文件系统,可以修改开发板/etc/profile文件,将这些环境变量写入,就不用每次设置了
*****************************

      校准屏幕(5点校准)
      cd /tmp/bin/tests
      ./ts_calibrate
      会陆续在LCD的4个角和中点出现光标,点击光标进行校准,生成校准文件
    
     再运行测试
     ./ts_test
     这时LCD上出现光标,你的手指点哪里光标就会跟到哪里才成功
     
     运行PDA
      cd /tmp/bin
      ./qpe
出现”Tap anywhere to continue”,然后进行qpe5点校准,进入qpe

【问题】: 如何运行设置环境变量文件 setenv.sh
【解决方法】:. ./setenv.sh

【问题】: ts_open:No such file or dircetory //ts_open() 打开触摸屏设备
【解决方法】:是触摸屏驱动没移植好,导致打不开触摸屏设备。先确认一下在/dev/input/下面是否有ts0,mouse0等,
              如果没有,是触摸屏驱动没有移植好

【问题】:   Cannot create Qt/Embedded data directory: /tmp/qtembedded-0
【解决方法】:把qt加载到一个可读写的目录下面


【问题】: 运行./ts_calibrate又出现了令人十分之郁闷的错误:
             ts_config: Success

【解决方法】:cp   tslib/plugins/.libs/*.so board/lib //这些是ts.conf要用到的库文件:
        // mousebuts.so variance.so dejitter.so linear.so
       export TSLIB_PLUGINDIR=/tmp/lib           //指定触摸屏插件所在路径:
                                                // mousebuts.so variance.so dejitter.so linear.so的存放路径


【问题】: 1:option '-16018' not recognisedts_config:success
【解决方法】:必须将pointercal文件删除,然后从tslib/etc/下面将原始的ts.conf重新拷贝到board下面即可。


【问题】: timezone警告的问题
【解决方法】:
在usr/etc/profile中添加export TZ=America/New_York
拷贝 qtopia/etc/zoneinfo/zone.tab 到 /usr/share/zoneinfo/下
//拷贝 qtopia/etc/zoneinfo/America/New_York 到 /usr/share/zoneinfo/America/New_York下
拷贝 qtopia/etc/zoneinfo 到 /usr/share/下

【问题】:我怎么知道/dev/input/eventX这些事件到底是什么事件阿,是鼠标还是键盘或者别的,
eventX代表的是所有输入设备(input核心)的事件,比如按键按下,或者鼠标移动,或者游戏遥控器等等,
【解决方法】:在系统查看的方法是 cat /proc/bus/input/devices 就可以看到每个eventX是什么设备的事件了。
//插入鼠标后
I: Bus=0013 Vendor=dead Product=beef Version=0101
N: Name="s3c2410 TouchScreen"
P: Phys=
H: Handlers=mouse0 event0 ts0 evbug
B: EV=b
B: KEY=400 0 0 0 0 0 0 0 0 0 0
B: ABS=1000003

I: Bus=0003 Vendor=15d9 Product=0a37 Version=0100
N: Name="USB Mouse"
P: Phys=usb-s3c24xx-1/input0
H: Handlers=mouse1 event1 ts1 evbug
B: EV=7
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=103

=====================================================================================
(7)
【问题】: 出现”Tap anywhere to continue”,不能进行:qpe5点校准,进入qpe
/dev/input 下面有:
鼠标: event0 mouse0 ts0   tsraw0
触摸屏:event1 mouse1 ts1   tsraw1
【问题】: 当设置 export QWS_MOUSE_PROTO=QVFbMouse:/dev/input/ts0 时:
          按下触摸屏后弹出窗口: Calibrate: Calibration can only be performed on a touch screen
=====================================================================================

【解决方法】:板子的触摸屏设备驱动和QT/E的readMouseData()函数不匹配,需要修改QT/E源代码。利用vi工具打开管理触摸屏的QT/E源代码qte/src/kernel/qwsmouse_qws.cpp,并参考ARMLinux系统的触摸屏ADS7843驱动代码(/driver/char/ads7843_ts.c)中的读函数来适当地修改参数值。
(i)将 qte/src/kernel/qwsmouse_qws.cpp 中的 “#define QWS_CUSTOMTOUCHPANEL”前的注释去掉

(ii)下面带有//wpb add 注释的语句是要添加的部分
class QCustomTPanelHandlerPrivate : public QWSMouseHandler
{
    Q_OBJECT
public:
    QCustomTPanelHandlerPrivate(MouseProtocol, QString dev);
    ~QCustomTPanelHandlerPrivate();
private:
    int mouseFD;
    unsigned char prevstate; //wpb add
private slots:
    void readMouseData();
};

(iii)下面带有//wpb add 注释的语句是要添加的部分
QCustomTPanelHandlerPrivate::QCustomTPanelHandlerPrivate(
MouseProtocol, QString )
{
#ifdef QWS_CUSTOMTOUCHPANEL
   if ((mouseFD = open( "/dev/ts", O_RDONLY))
       qWarning( "Cannot open /dev/ts (%s)", strerror(errno));
     return;
   } else {
       sleep(1);
   }
   prevstate = 0;     //wpb add
   QSocketNotifier *mouseNotifier;
   mouseNotifier = new QSocketNotifier( mouseFD, SocketNotifier::Read, this );
   connect(mouseNotifier,SIGNAL(activated(int)),this, SLOT(readMouseData()));
#endif
}


(iv)//把readMouseData()改成下面所示
void QCustomTPanelHandlerPrivate::readMouseData()
{
#ifdef QWS_CUSTOMTOUCHPANEL
    if(!qt_screen)
return;
    CustomTPdata data ;

    short data2[4]={0};

    int ret;
                                                                                                
    ret=read(mouseFD,data2,sizeof(data2));
    if(ret)
    {
        data.status=data2[0];
        data.xpos=data2[1];
        data.ypos=data2[2];

        QPoint q;
        q.setX(data.xpos);
        q.setY(data.ypos);
        mousePos=q;
        if(data.status && !prevstate)
        {
              emit mouseChanged(mousePos,Qt::LeftButton);
        }
else if(!data.status&&prevstate)
{
              emit mouseChanged(mousePos,0);
        }
        prevstate=data.status;
    }
    if(ret<0){
        qDebug("Error %s",strerror(errno));
    }
#endif
}

(v) QWSMouseHandler* QWSServer::newMouseHandler(const
QString& spec)

QWSMouseHandler *handler = 0;
mouseProtocol = TPanel;   // add this line
   switch ( mouseProtocol ) {


(iii)配置qte:
     ./configure -qconfig qpe -no-xft -qvfb -depths 4,8,12,16 -xplatform linux-arm-g++ -system-jpeg -gif
     //去掉-tslib

(iv) # make

(8)

vi qtopia/src/settings/calibrate/calibrate.h
添加:#define QWS_NEED_CALIBRATION


//////////////////////////////////
POINTERCAL_FILE(由于其他目录不可写,我把校准文件的存放位置改到了/mnt/yaffs/tmp/目录下)
vi qtopia/src/settings/calibrate/calibrate.cpp
将第99行的/etc/pointercal改为/tmp/pointercal
5.POINTERCAL_FILE
vi qtopia/src/server/pda/firstuse.cpp
将第345行的/etc/pointercal改为/tmp/pointercal
6.POINTERCAL_FILE
vi qte/src/kernel/qwsmouse_qws.cpp
将所有/etc/pointercal修改为/tmp/pointercal

==========================================================
(1)语言和时区设置完成之后,出现光标(忙状态),然后有如下报错信息,又重新回到初始界面:
warning: problem renaming file using qdir::rename /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf
Warning: ::rename problem renaming file /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf
Warning: ::rename problem renaming file /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf
Warning: ::rename problem renaming file /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf
Warning: ::rename problem renaming file /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf
Warning: ::rename problem renaming file /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf
Warning: ::rename problem renaming file /tmp/Settings/qpe_new.conf to /tmp/Settings/qpe.conf errno 2
[9;15] [?33h [?25h [?0c?25h [?0c [9;15] [?33h [?25h [?0c33h [?25h [?0c [9;15] [?33h [?25h [?0c33h [?25h [?0c [9;15] [?33h [?25h [?0c15] [?33h [?25h [?0c [9;0] [?33l [?25ll [?25lproblem renaming file using qdir::rename /tmp/Settings/locale_new.conf to /tmp/Settings/locale.conf
::rename problem renaming file /tmp/Settings/locale_new.conf to /tmp/Settings/locale.conf errno 2
[9;0] [?33l [?25l [9;0] [?33l [?25l[?25l [9;15] [?33h [?25h [?0c[?33h [?25h [?0c [9;0] [?33l [?25ll [?25l [9;0] [?33l [?25l25lWarning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: problem renaming file using qdir::rename /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf
Warning: ::rename problem renaming file /tmp/Settings/PluginLoader_new.conf to /tmp/Settings/PluginLoader.conf errno 2
Warning: language message - en_US
Warning: and its not null
Warning: loading /tmp/i18n/en_US/qt.qm
Warning: loading /tmp/i18n/en_US/qpe.qm
Warning: loading /tmp/i18n/en_US/libqpe.qm
Warning: loading /tmp/i18n/en_US/libqtopia.qm
Warning: loading /tmp/i18n/en_US/language.qm
Warning: loading /tmp/i18n/en_US/timezone.qm
Warning: loading /tmp/i18n/en_US/systemtime.qm
Warning: language message - en_US
Warning: and its not null
Warning: loading /tmp/i18n/en_US/qt.qm
Warning: loading /tmp/i18n/en_US/qpe.qm
Warning: loading /tmp/i18n/en_US/libqpe.qm
Warning: loading /tmp/i18n/en_US/libqtopia.qm
Warning: loading /tmp/i18n/en_US/language.qm
Warning: loading /tmp/i18n/en_US/timezone.qm
Warning: loading /tmp/i18n/en_US/systemtime.qm
Warning: language message - en_US
Warning: and its not null
Warning: loading /tmp/i18n/en_US/qt.qm
Warning: loading /tmp/i18n/en_US/qpe.qm
Warning: loading /tmp/i18n/en_US/libqpe.qm
Warning: loading /tmp/i18n/en_US/libqtopia.qm
Warning: loading /tmp/i18n/en_US/language.qm
Warning: loading /tmp/i18n/en_US/timezone.qm
Warning: loading /tmp/i18n/en_US/systemtime.qm
Warning: language message - en_US
Warning: and its not null
Warning: loading /tmp/i18n/en_US/qt.qm
Warning: loading /tmp/i18n/en_US/qpe.qm
Warning: loading /tmp/i18n/en_US/libqpe.qm
Warning: loading /tmp/i18n/en_US/libqtopia.qm
Warning: loading /tmp/i18n/en_US/language.qm
Warning: loading /tmp/i18n/en_US/timezone.qm
Warning: loading /tmp/i18n/en_US/systemtime.qm
Warning: language message - en_US
Warning: and its not null
Warning: loading /tmp/i18n/en_US/qt.qm
Warning: loading /tmp/i18n/en_US/qpe.qm
Warning: loading /tmp/i18n/en_US/libqpe.qm
Warning: loading /tmp/i18n/en_US/libqtopia.qm
Warning: loading /tmp/i18n/en_US/language.qm
Warning: loading /tmp/i18n/en_US/timezone.qm
Warning: loading /tmp/i18n/en_US/systemtime.qm
You touch the screen

You touch the screen
【处理】:将一个校验文件pointercal 拷贝到/etc目录下,//设置 export POINTERCAL_FILE=/tmp/pointercal

(2)出现界面后报错:
Warning: QServerSocket: failed to bind or listen to the socket
Warning: Failed to bind to port 4242
Warning: QServerSocket: failed to bind or listen to the socket
Warning: Failed to bind to port 4243
Warning: QServerSocket: failed to bind or listen to the socket
Warning: Failed to bind to port 4242
Warning: QServerSocket: failed to bind or listen to the socket
Warning: Failed to bind to port 4243
Warning: QServerSocket: failed to bind or listen to the socket
Warning: Failed to bind to port 4242

/tmp # Warning: QServerSocket: failed to bind or listen to the socket
Warning: Failed to bind to port 4243
Warning: QServerSocket: failed to bind or listen to the socket
Warning: Failed to bind to port 4242
【解决方案】: 在运行 /tmp下面的 ./bin/qpe时,后面不要添加 -qws&,因为:qpe本身就是把自己设置为server的

(3)校准完成后,位置不对,点中间位置,控制了右下角的按钮。
校准后的pointercal不能写入到目录下?????????


QDir::readDirEntries: Cannot read the directory: /usr/lib/ipkg/externinfo

原文地址:http://hi.baidu.com/428501/blog/item/3370251f19ecf365f724e447.html

阅读(1541) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~