Category Archives: 技术

Build Qt for Symbian

About Symbian development environment, please have a look at:
SYMBIAN Development Environment – 1
SYMBIAN Development Environment – 2

Build Qt for Symbian

Platform: Windows XP with SP3(now we only support Qt/S60 on it.)

0. Patches

Patches for S60 development environment

1. Build Qt for symbian

qt-embedded-s60-opensource-src-4.4.2-pyramid.zip

You need to make sure to use Symbian X86 compiler (version 3.2.5 build 473).

Follow this steps in C:Qt4.4.2-pyramiddocinstall-s60.html

Uncompress the package and put it in C:Qt4.4.2-pyramid.

Set your PATH including C:Qt4.4.2-pyramidbin.

Configure:

C:
cd Qt4.4.2-pyramid
configure -platform win32-mwc -xplatform symbian-abld -qconfig symbian

Build:

bldmake bldfiles
abld build winscw udeb

Notice: Please store the Qt/S60 repository and Symbian SDK in the same hard disk drive, maybe you can store them in different drives, and then use tools like WinMount to mount them to same drive.

Before configure and build, you need set EPOCROOT to your SDK, I use “/S60/devices/S60_3rd_FP2_SDK/”, just because my sdk is in C:S60devicesS60_3rd_FP2_SDK.

2. Build Examples

2-1. How to build Qt/S60 application

C:Qt4.4.2-pyramiddocs60-with-qt-introduction.html

Please make sure to use the qmake in your Qt/S60 build.

qmake
bldmake bldfiles
abld build winscw udeb

Run Carbide.c++ v1.3, In the tab of “Symbian Project Navigator”, right click mouse in white space, choose “Import”, in the “Import” dialog, choose “Symbian OS Bld.inf file” under “Symbian OS”, then “Next”, then “Browse…” to choose the bld.inf in above directory. Then you could build it, run it and debug it in Carbide.c++.

2-2. XML HTML info Example

C:Qt4.4.2-pyramiddocxml-htmlinfo.html

Note: Standard out is redirected on some platforms. On Symbian using Open C stdout is by default directed to the console window, but this window may not always be visible. To redirect to a file instead, locate the c:\system\data\config.ini file (on either the emulator or the device) and change STDOUT to point to MEDIA4. This will redirect the console to c:\system\data\out.txt.

For me, the config.ini is C:S60devicesS60_3rd_FP2_SDKepoc32winscwcsystemdataconfig.ini, the out.txt is C:S60devicesS60_3rd_FP2_SDKepoc32winscwcsystemdataout.txt.

Run the Emulator, Start->S60 Developer Tools->3rd Edition FP2 SDK->Emulator.

In the Emulator, go to Menu->Installations->eshell, and type htmlinfo in prompt mode.

2-3. analogclock Example

Now it works fine for me.

Qt/S60 team are still working on the project to make all things work.

3. Build Qt applications for your mobile phone

Please have a look at C:Qt4.4.2-pyramidREADME and C:Qt4.4.2-pyramidINSTALL.

Just go to your Qt application directory,

qmake
bldmake bldfiles
abld build gcce udeb

Create a package for your mobile phone:

createpackage yourqtapplication_gcce_udeb.pkg

Note: Now the package will include Qt library in the .pkg file, if you already have a Qt application package installed, maybe you can’t install the next one. Then please remove these lines from the .pkg file of your second application.

“epoc32releasegcceudebQtGui.dll” – “c:sysbinQtGui.dll”
“epoc32releasegcceudebQtNetwork.dll” – “c:sysbinQtNetwork.dll”
“epoc32releasegcceudebQtCore.dll” – “c:sysbinQtCore.dll”

第一次把Linux安装到USB移动硬盘上

因为Nokia的Windows系统是在加密的NTFS分区上工作的,并且默认占据整个硬盘,我用ntfsresize无法真确识别该分区。没办法,第一次把Linux安装到USB移动硬盘上。安装过程都很顺利,GRUB安装到了移动硬盘上。

启动的时候,GRUB报错,后来找到原因了。我的笔记本内置SATA硬盘,所以内核启动后会把它识别为sda,而移动硬盘则成了sdb,安装Linux时它会自动写找hd1,实际上在USB硬盘启动过程中(内核启动之前)只识别了它自己,所以改GRUB的设置为hd0就都正常了。

今天还试了试KDE 4.1中的KWin特效,很不错。

Qt 4.4.1的中文翻译文件

因为最近我刚从客户那里回来,才和FrankLin翻译了简体中文和繁体中文的相关文件,没有赶上4.4.1发布,大家如果需要上述翻译文件,可以到Qt每日快照中下载,7月31日及以后的包即可,4.4.2或者4.5.0的都可以。

备注:请下载.ts文件,用lrelease重新生成相应的.qm文件。2008-08-06更新了繁体中文的部分文件中的一些标点使得打开文件等相应操作正常。

SYMBIAN Development Environment – 1

SYMBIAN Development Environment (1)

Platform: Windows XP Pro(SP3)

1. Software Packages

For downloading the packages, you need to register an account in the forum of Nokia,
http://www.forum.nokia.com/main/registration/registration.html

1-1. Carbide.C++
http://www.forum.nokia.com/main/resources/tools_and_sdks/carbide/
http://www.forum.nokia.com/info/sw.nokia.com/id/dbb8841d-832c-43a6-be13-f78119a2b4cb.html

Carbide.C++ 1.3
Carbide.c++_v1.3.exe 185MB

1-2. S60 Platform SDKs for Symbian OS, for C++
http://www.forum.nokia.com/info/sw.nokia.com/id/4a7149a5-95a5-4726-913a-3c6f21eb65a5/S60-SDK-0616-3.0-mr.html

S60 Platform SDKs for Symbian OS, for C++, 3rd Edition, Feature Package 2(FP2)
S60-3.2-SDK-f.inc3.2130.zip 438MB

1-3. Open C/C++ Plug-ins for S60 3rd Edition
http://www.forum.nokia.com/info/sw.nokia.com/id/91d89929-fb8c-4d66-bea0-227e42df9053/Open_C_SDK_Plug-In.html

Plugin_For_S60_3rd_Ed.zip 41.3MB

2. Installation

Please install above 3 packages as default path.

Installation order: Carbide.C++, S60 SDK, Plugin.

After Carbide.C++, you may need to install ActivePerl-5.6.1.635-MSWin32-x86.msi:

http://downloads.activestate.com/ActivePerl/Windows/5.6/ActivePerl-5.6.1.635-MSWin32-x86.msi

3. Emulator
Start->S60 Developer Tools->Emulator

4. Try first example application for S60

Run Carbide.C++ 1.3
Start->Carbide.c++ v1.3->Carbide.c++ v1.3

In the welcome page, you could click “Tutorials”->”Create an application emulator debug example”, and follow this tutorial to build your first example application for S60.

(Info: If the welcome page takes all space of the workspace in Carbide.c++, it makes you can’t find the project tree and other things, PLEASE CLICK “Restore” OPTION IN THE TOP-RIGHT CORNER OF THE WELCOME PAGE!)

Follow above steps to create your project, but if you can’t see any template in “New Symbian OS C++ Project” dialog when you enable “Filter templates based on enabled SDKs”, it means Carbide.c++ doesn’t find the SDK which you had installed. Then please cancel the dialog.

In the main menu of Carbide.c++, Window->Preferences->Carbide.c++->SDK Preferences, you will find out there is nothing in the “Available Symbian OS SDKs”. Please click “Add New SDK”, in the “Add New SDK” dialog, SDK ID: should be “S60_3rd_FP2_SDK”, EPOCROOT: should be “C:S60devicesS60_3rd_FP2_SDK”, Vendor: should be “com.nokia.s60”, Is Default: should be “yes”. Then click “OK” on it. Click “Rescan All SDKs” and “OK”.

Now you can return to your project.

Follow the tutorial, you could run the application in the emulator, in my case the emulator path should be: C:S60devicesS60_3rd_FP2_SDKepoc32releasewinscwudebepoc.exe

Why not try it on your phone?

Copy C:SymbianCarbideworkspaceOroboroussisOroborous_S60_3_X_v_1_0_0.sisx to your phone via usd disk mode. Install it and run it.

If you got some errors like that “Certificate error. Contact the application supplier.”, you need to set your phone like this:
Installations->App. mgr.->Options->Settings, choose “All” for “Software installation”.

Then all should be ok.