标题:【原创】qt/e开发记录
作者:wangxiao0128
日期:2005-12-31 10:45
内容:
没搞多九QT/E,只是想把自己前段时间的学习心得跟大家交流...
此文为本人工作时的小记,其中关于了一些QT/E程序如何在ARM开发板上执行的内容.
在虚拟机中对程序进行编译时,需要先进行EXPORT设置一些路径,如下:
# export TMAKEDIR=$PWD
# export TMAKEPATH=$TMAKEDIR/lib/qws/linux-x86-g++
# export PATH=$TMAKEDIR/bin:$PATH
# export QTDIR=$PWD
# export QTEDIR=$QTDIR
# export PATH=$QTDIR/bin:$PATH
# export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
上面是将程序编译成可在虚拟机下执行(模拟桢缓冲中显示,即QVFB中显示)。
如果是要将程序交叉编译成在开发板中执行的程序, EXPORT设置路径需要改动一处:
# export TMAKEPATH=$TMAKEDIR/lib/qws/linux-arm-g++.
在虚拟机的HOME/WANGXL目录下面有两个关于libqte.so文件的目录,一个是lib_qte此为在开发板上qt/lib中的libqte.so等文件,另一个lib_qte_old是虚拟机上qt-2.3.7/lib中的libqte.so等文件。
要在开发板上显示虚拟机中的QTE程序,需要在虚拟机中装入交叉编译环境(arm-elf-gcc-3.2-full-tar.bz2与arm-linux-gcc-3.3.tar.bz2,板上自带程序),装入地址为:
/usr/local/arm。另需要将/usr/local/arm/3.2-elf/bin与/usr/local/arm/3.3/bin路径写入.bash_profile文件当中。
此外,需要在虚拟机路径/usr/local/arm/3.3/lib/gcc-lib/arm-linux/3.3中加入开发板中的libqte.so等四个文件(位于../qt/lib下),这个是在虚拟机中将C++文件编译成可在开发板中执行的文件所必须的qte库支持文件。
如果是要将编译为arm下可执行改为编译为虚拟机下可执行,需要将前面讲到的EXPORT设置改动一处,另外,需要删除Makefile文件,重新建立Makefile文件。
另外,用designer设计的ui文件生成头文件和CPP文件的UIC命令格式如下:
uic –o test.h test.ui
uic –i test.h –o test.cpp test.ui
由pro文件生成Makefile文件的格式如下
tmake –o Makefile test.pro
另外,开发板从15号开发机上获取文件,由于开发板速度慢,用超级终端(串口连在开发板与主机之间)对开发板进行操作(但对QTE程序执行操作需要在开发板子上操作)。
开发板从开发机获取可 ..
#1 [jiancheng 01-15 22:39]
显示出来的结果是:只显示了一个“中”字,其余的仍然是方框。
我已经很努力的研究了一阵子了,但是不知道是何问题,还请各位高手指点。
问题解决了吗?
#2 [jszeng 01-16 15:35]
是不是你的环境变量中的字库不是GBK的啊,查查你的环境变量的LANG关键字对应的pc上的默认字库.
#3 [修罗王1981 01-16 18:23]
QT/E 2.3.7 国际化步骤(原创)
作者:海进 2005.12.23
基本的要求是你手头上有一个编译成功的还没有国际化的工程,其中的文件有(以hello为例):hello.cpp,hello.h,main.cpp和Makefile,把三个需要用的工具cp到当前的工程目录中,它们是lupdate,lrelease和linguist.
Step1:做好以上准备工作以后,修改main.cpp,加入#include,并且把需要翻译的字符用QObject::tr()括起来,我的main.cpp是这样的:
int main( int argc, char **argv )
{
QApplication a(argc,argv);
QFont font1("unifont",16); //***重要
a.setFont(font1); //***重要
QTranslator *translator=new QTranslator(0);//***重要
translator->load("lang_zh.qm","."); //载入翻译文件为lang_zh.qm,这个是用lrelease工具生成的
a.installTranslator(translator); //***重要
QString s;
for ( int i=1; i
#4 [修罗王1981 01-16 19:02]
转: Qt/Embedded 中文處理實戰- -
台湾人写的,我还没实践过呢,不过应该很快就要用到了.放这里先.
版權宣告:本文允許在保留作者、出處,以及本宣告的前提下,以任何人類可讀 之形式自由散佈標題:Qt/Embedded 與 Qtopia 中文處理實戰 作者:黃敬群 最後更新:March 11, 2002 Qt/Embedded 中文處理實戰 作者:黃敬群 [-] 前言 Qt/Embedded 是 Trolltech 進軍 embedded system 的強力武器。秉持著 Qt 在桌面系統 (desktop) 的成功、KDE 成熟而完整的架構 [注 1],Trolltech 精簡 Qt 的 API,並依據 embedded system 的需求加以作部份功能的擴充與調整。不同於一般 embedded 環境中常見的 toolkit 大多只有處理顯示的機制 (如 FLTK 、MiniGUI、Gtk-FB、... 等),Qt/Embedded 本身就是相當完整的架構,而充分支援 Unicode、依循 i18n (internationalization) / l10n (localization) 標準的發展路線,更是讓 Qt/Embedded 的應用突破語系的限制,本文就是探討如何對 Qt/Embedded 作中文處理,並提及 Qt/Embedded 的若干觀念,希望能對您有幫助。 * 註 1: Trolltech 裡頭不少工程師本身就是 KDE 的核心開發者,當 他們設計 Qt/Embedded 與 Qtopia 時,多少也參考了 KDE 的 架構 筆者實際上也是初學者,撰寫本文主要是心得筆記,有感一直沒有這類的文件可以參考,所以嘗試著把自己的諸多試驗整理而與大家共享,如有謬誤,還請來信指正,謝謝! [-] 大綱 . Qt/Embedded 與 Qtopia 概況 . 手動調整 Qt/Embedded . QVFB (Qt Virtual FrameBuffer) 使用 . 應用軟體翻譯 . Launcher/Directory 的翻譯 . System Script . 核心支援項目 [-] Qt/Embedded 與 Qtopia 概況 提到 Qt/Embedded,不免就會聯想到同樣是 Trolltech 推出的重量級武器 -- Qtopia [註 2]。Qtopia 之前的名稱是 Qt Palmtop Environment (QPE),目標是打造出一個整合性的 PIM (Personal Information Management)、多媒體效果、網路、... 等環境,適合中高階的手持式 (handheld) 應用,而 Qt/Embedded 正是擔任底層的 Framework [註 3] 角色,不僅畫面的繪製、訊息系統 (如著名的 Signals & Slots 機制、Qt/Embedded 仿效 KDE DCOP 的 QCop 等),甚至連網路、XML 模組 (既然是模組,就可以選擇是否要加入編譯) 都納入核心 API 中。 * 註 2: Qtopia 的開發者首頁在 http://qpe.sourcefor ..