Qt Creator可执行程序移植到OK6410上

在Qt Creator中设计编写好界面程序后。按照《OK 6410 Qt移植百科全书》进行操作。

进入项目文件目录,设置好交叉编译器,可以用arm-linux-gcc -v 查看交叉编译器是否设置正确。找到编译Qtopia生成的目录,在其中找到qmake,在项目文件目录下,终端中输入qmake的绝对路径,用来生成Makefile 。该过程中没有出错的话,在项目文件中会生成一个Makefile文件,在CFLAGS和CXXFLAGS的的等号后面加上-fno-rtti ,然后在该路径下,执行make,生成可执行文件。

要将该文件移植到板子上之前,需要对环境变量进行配置,《OK 6410 Qt移植百科全书》上写的环境变量配置没有写全。完整的环境变量的配置如下:

export PATH=/opt/Qtopia4.4.3/bin:/sbin:/usr/sbin:/bin:/usr/bin

export QPEDIR=/opt/Qtopia4.4.3

export QTDIR=/opt/Qtopia4.4.3

export QT_QWS_FONTDIR=/opt/Qtopia4.4.3/lib/fonts/

export QWS_DISPLAY=LinuxFb:mmWidth76:mmHeight44:1                 (与字体大小有关)

export QWS_MOUSE_PROTO=Tslib:/dev/input/event1

export TSLIB_CALIBFILE=/etc/pointercal

export TSLIB_CONFFILE=/usr/local/tslib/etc/ts.conf

export TSLIB_CONSOLEDEVICE=none

export TSLIB_FBDEVICE=/dev/fb0

export TSLIB_PLUGINDIR=/usr/local/tslib/lib/tsexport TSLIB_ROOT=/usr/local/tslib

export TSLIB_TSDEVICE=/dev/input/event1

export TSLIB_TSEVENTTYPE=H3600

export QT_PLUGIN_PATH=/opt/Qtopia4.4.3/plugins:/opt/Qtopia4.4.3/qt_plugins/

export LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$QTDIR/lib:$QTDIR/qt_plugins/:/usr/local/lib:$LD_LIBRARY_PATH

《OK 6410 Qt移植百科全书》少了最后一行。

其中,export QWS_DISPLAY=LinuxFb:mmWidth76:mmHeight44:1 
可以改变mmWidth和mmHeight44后面的数字,经尝试发现,export QWS_DISPLAY=LinuxFb:mmWidth76:mmHeight100:1 在Ok6410的4.3寸屏幕上比较合适。可以显示清晰字体。

在板子上显示中文:

在板子上可以看到Qtopia的lib库中,有fonts字体库,在qt-4.7.1中也有字体库。把qt4.7.1中的wenquanyi字体都拷贝到Qtopia的字体库中。

在Qt creator中在main.cpp中添加下面红色字体:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QTextCodec::setCodecForTr(QTextCodec::codecForLocale());
    QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
    QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));

    MainWindow w;
    w.show();
    w.setFont(QFont("wenquanyi",12,QFont::Normal));
    return a.exec();
}
这样生成的可执文件可以在板子上显示中文。

 

板子上是Otopia2.0:

首先在Ubuntu的终端中设置好交叉编译器,按照《OK6410移植百科》上的方法,编译qt4.7.1,会在qt4.7.1的目录下的bin文件夹下面生成qmake,然后make install安装qmake,接下来用该qmake安装上面的方法,生成Makefile,修改Makefile的方法如上。接下来的步骤就按照上面来。在板子上设置环境变量的时候,记得把Qtopia4.4.3改成Qtopia。


Qt可执行程序移植到板子上后,点击没的反映,要么是出现花屏,显示桌面,解决方法:启动的时候启动自己的界面。

首先:修改/etc/init.d中rcS的内容,用#注销/bin/qtopia &这句话。

然后:添加代码

cd /                             (我的qt可执行程序所在的目录)                       
. setqt4env                  (环境变量)         
./clmcu8 -qws &        

最后:保持该启动文件。

其中setq4env是这样来的:

在/bin文件夹中创建该文件,将/bin/下的qt4里面的内容全部复制到setqt4env,然后删除最后三行添加:

export PATH=/opt/Qtopia/bin:/sbin:/usr/sbin:/bin:/usr/bin       
export QPEDIR=/opt/Qtopia                                       
export QTDIR=/opt/Qtopia                                                        
export QT_QWS_FONTDIR=/opt/Qtopia/lib/fonts/              

export QT_PLUGIN_PATH=/opt/Qtopia/plugins:/opt/Qtopia/qt_plugins/               
export LD_LIBRARY_PATH=$TSLIB_ROOT/lib:$QTDIR/lib:$QTDIR/qt_plugins/:/usr/local/

这样,启动的就是自己的界面了,并且可以使用触摸屏

   

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值