有很多涉及到編譯過(guò)程的工具.這篇文章里我們僅學(xué)習(xí)一個(gè)最基本的工具編譯一個(gè)簡(jiǎn)單應(yīng)用程序的過(guò)程(針對(duì)Series 60和UIQ).
命令行工具
第一個(gè)涉及到的工具就是bldmake:這個(gè)工具可以創(chuàng)建一個(gè)命令文件,你將用到這個(gè)文件來(lái)編譯并連接你的應(yīng)用程序(abld).
Bldmake需要bld.inf文件來(lái)完成這些工作
Abld.bat文件是應(yīng)用程序編譯的入口點(diǎn).
依據(jù)你傳遞給abld命令的參數(shù).將會(huì)產(chǎn)生如下文件:一個(gè)Visual C++工作區(qū)和項(xiàng)目文件(abld makefile vc6),一個(gè)Windows模擬器應(yīng)用程序(abld build wins udeb)或一個(gè)真實(shí)Symbian設(shè)備的應(yīng)用程序(abld build thumb urel).
VC6和Wins參數(shù)可以見(jiàn)名知義(VC6=Visual C++6,Wins=Windows).udeb則意味著”Unicode-Debug”,urel表示”Unicode-Release”.Unicode是一個(gè)字符編碼格式(有些類(lèi)似ASCII但Unicode允許外文字符編碼(包括漢語(yǔ))).Debug的意思是你將會(huì)產(chǎn)生關(guān)于你的應(yīng)用程序的調(diào)試信息(大概是模擬器的版本信息),發(fā)布到真實(shí)設(shè)備上時(shí)將不會(huì)包含調(diào)試信息(已經(jīng)發(fā)布了就不會(huì)再需要調(diào)試了)
創(chuàng)建調(diào)試日志(log)文件
文/Peter Jiang(譯自newlc.com)
需要在手機(jī)上調(diào)試代碼或跟蹤執(zhí)行過(guò)程?RFileLogger也許可以幫助你.這個(gè)class的功能非常強(qiáng)大而且很容易使用.
首先聲明一個(gè)文件日志的連接并且創(chuàng)建一個(gè)log文件
//打開(kāi)日志文件服務(wù)的連接
RFileLogger iLog;
iLog.Connect();
iLog.CreateLog(_L("MyLoggingDirectory"),_L("MyLogFile"),EFileLoggingModeOverwrite);
//...
//關(guān)閉log文件和服務(wù)器連接
iLog.CloseLog();
iLog.Close(); |
第3行的CreateLog函數(shù)有三個(gè)參數(shù):
Log路徑
Log文件名
記錄模式(EFileLoggingModeOverwrite|EFileLoggingModeAppend)
例如下列代碼,是我的log文件的full path(手機(jī)上的文件系統(tǒng))
C:/Logs/MyLoggingDirectory/MyLogFile.
對(duì)我來(lái)說(shuō),我習(xí)慣把opening代碼放到我希望跟蹤的class的ConstructL()函數(shù)里面,然后在析構(gòu)函數(shù)里closing.在真正編碼時(shí),你最好檢測(cè)一下Connect和CreateLog是否返回了KErrNone.
一旦你完成了這些,你就可以向log文件中輸入文本和數(shù)據(jù)了。基本的命令為:
命令 |
Log文件 |
iLog.Write(_L("Hello World")) |
11/07/2003 4:00:13 Hello World |
iLog.WriteFormat(_L("Result=%d"),err) |
11/07/2003 4:00:13 Result=0 |
iLog.HexDump(aHeader,aHeader,myPtr,4) |
11/07/2003 4:00:13 myBuf:0000: 41 42 00 44 AB.D |
要是不希望記錄日期和時(shí)間,你可以使用這條語(yǔ)句來(lái)關(guān)閉它們。
iLog.SetDateAndTime(TBool aUseDate, TBool aUseTime) |
別忘了在MMP文件上加入flogger.lib,還有包含flogger.h頭文件。現(xiàn)在可以編譯執(zhí)行你的程序了。
Stop!log文件還沒(méi)建立呢!正確!這沒(méi)辦法在代碼里完成,我們只能手工在C:/Logs/MyLoggingDirectory目錄中創(chuàng)建log文件,否則什么日志也不會(huì)記錄。不需要重新編譯。
|