在命令行下使用abld可以直接編譯Symbian的程序,但是abld同時(shí)提供了命令行開關(guān)可以用來生成vc6的項(xiàng)目文件。使用abld生成的vc6的工程文件,我們就可以在vc6中調(diào)試symbian的程序了。步驟如下
- devices -setdefault @UIQ_21:com.symbian.UIQ
- abld makefile vc6
- 用VC6打開的生成在 \epoc32\build\\UIQEXAMPLES\HELLOWORLD\HELLOWORLD\WINS目錄下的HelloWorld.dsw項(xiàng)目文件。
- 設(shè)定Debug用的宿主程序?yàn)閈EPOC32\RELEASE\WINS\UDEB\EPOC.EXE
- Debug運(yùn)行程序,就可以調(diào)適程序單步執(zhí)行,或者在斷點(diǎn)上定位。
一、Helloword示例:
首先檢查SDK是否能夠正常運(yùn)行:
進(jìn)入一個(gè)DOS界面
輸入"NMAKE",如果得到Microsoft Error message U1064的錯(cuò)誤提示,檢查你的路徑配置是否正確。如果提示NMAKE is not a recognised command,需要運(yùn)行路徑為C:\Program Files\Microsoft Visual Studio\VC98\Bin 下的VCVARS32.BAT腳本。
?在DOS下進(jìn)入HellowWorld,路徑為C:\Symbian\6.1\Series60\Epoc32Ex\Basics\HelloWorld
這個(gè)目錄下包含3個(gè)文件:
bid.inf
helloworld.mmp
helloworld.c
Bid.inf文件是主要的Project文件
HelloWorld.mmp是一個(gè)project makefile.包括所有源文件和庫(kù)的列表:
HelloWord.cpp是C++代碼
CommonFramework.h是一個(gè)頭文件,The CommonFramework.h set up a basic console environment and calls a doExampleL() primitive: this is an extremely useful file to begin playing Symbian C++ without the burden of NS60 specific code (you can also read A simple text console if you want to know more about this console).
二、命令行編碼:
??? 在DOS環(huán)境下輸入 bldmake bldfiles.將會(huì)在Project目錄下創(chuàng)建一個(gè)ABLD.BAT文件,這是編譯程序的入口文件。
輸入abld build wins udeb進(jìn)行編譯。編輯后的結(jié)果存在C:\Symbian\6.1\Series60\Epoc32\Release\wins\UDEB目錄下。輸入Helloworld就可以在epoc模擬器下運(yùn)行"Hello world"程序了。
三、用Visual C++
你也可以用C++編譯和執(zhí)行應(yīng)用程序。
回到C:\Symbian\6.1\Series60\Epoc32Ex\Basics\HelloWorld
用命令生成一個(gè)Visual C++ workspace:abld makefile vc6
在下面的目錄可以找到C:\Symbian\ 6.1\ Series60\ Epoc32\ BUILD\ SYMBIAN\ 6.1\ SERIES60\ EPOC32EX\ BASICS\ HELLOWORLD\ HELLOWORLD\ WINS
打開這個(gè)workspace并重新編譯,用CTRL-F5開始運(yùn)行。
四、目標(biāo)編譯
現(xiàn)在需要在你的移動(dòng)設(shè)備上運(yùn)行這個(gè)程序,回到DOS下,進(jìn)入C:\Symbian\6.1\Series60\Epoc32Ex\Basics\HelloWorld
用abld命令編譯abld build thumb urel