該文檔在網(wǎng)上比較多見,我只是找來結(jié)合自己的安裝做了些增補(bǔ),增補(bǔ)以紅色字體示出
第一章 環(huán)境搭建
Symbian是Nokia公司開發(fā)的一款智能手機(jī)操作系統(tǒng)。Nokia根據(jù)手機(jī)的屏幕大小和價(jià)格高低把手機(jī)分成了多個(gè)系列,現(xiàn)在使用的系列有:Series 40、Series 60、Series 80 和Series 90。60系列采用Symbian os 6.1,然后又根據(jù)手機(jī)屏幕的特點(diǎn)對(duì)UI做了一些修改,這個(gè)被修改了的Symbian就被稱為Nokia的60系列平臺(tái)。使用60系列的手機(jī)型號(hào)包括:Nokia 6670、 Nokia 6630、 Nokia 6260 、Nokia N-Gage QD™ 、Nokia 7610 、Nokia 6620 、Nokia 3620 、Nokia 3660 、Nokia 6600 、Nokia 3600、Nokia 3650、Nokia 7650、Nokia N-Gage™等。
下面我們就以60系列為例,介紹開發(fā)環(huán)境的安裝過程。
Symbian開發(fā)環(huán)境一般分為兩大部分:集成開發(fā)環(huán)境(含編程語言)、專有開發(fā)工具。程序員在集成開發(fā)環(huán)境下按Symbian規(guī)范要求編寫程序代碼,然后用專有開發(fā)工具編譯、打包、發(fā)布Symbian平臺(tái)執(zhí)行程序。
為統(tǒng)一開發(fā)規(guī)范,Symbian開發(fā)環(huán)境和編程語言一律采用如下配置:
集成開發(fā)環(huán)境(IDE):Microsoft Visual Studio 6.0,C++
專有開發(fā)工具:Series 60 SDK for Symbian OS 2.1、Active Perl 5.8.8、JRE1.4.2
標(biāo)準(zhǔn)的Microsoft Visual Studio 6.0安裝步驟,這里不做說明。
注意:必須包含Visual C++,必須打SP3的補(bǔ)丁。(現(xiàn)在有SP6補(bǔ)丁,直接打SP6補(bǔ)丁就可以了)
第一步:安裝SDK,推薦為Symbian開發(fā)單獨(dú)建一個(gè)目錄,統(tǒng)一為:“C:\Symbian”不允許其他的目錄出現(xiàn)。
第二步:安裝Active Perl和J2RE,安裝到默認(rèn)目錄即可。
第三步:檢查環(huán)境變量設(shè)定。打開系統(tǒng)環(huán)境變量tab,然后看看有沒有EPOCROOT,如果有的話,把它手動(dòng)改成“\” 。改完之后應(yīng)該是這個(gè)樣子的:
EPOCROOT = \
然后,在系統(tǒng)PATH中加入 \epoc32\tools目錄以及\epoc32\gcc\bin目錄就可以了。
(這里實(shí)際操作時(shí)如果沒有EPOCROOT變量項(xiàng)則新建一個(gè)環(huán)境變量名為“EPOCROOT”使其變量值為“\Symbian\7.0s\Series60_v21_C\”,同時(shí)在PATH中的設(shè)置如上所述。)
把
C:\Symbian\7.0s\Series60_v21_C\Series60Tools\ appwizard
目錄下的EpocAppWiz.awx和EPOCAPPWIZ.HLP文件拷貝到vc6的模板目錄
C:\Program Files\Microsoft Visual Studio\Common\MSDev98\Template
下。這樣我們就可以在VC的新建工程中看到Series 60 AppWizard v 1.9這個(gè)選項(xiàng)。
至此,SYMBIAN的開發(fā)環(huán)境已經(jīng)全部搭建完畢。
注意:如果安裝了類似于ORACLE這樣自帶Perl和Java環(huán)境的軟件,需要修改環(huán)境變量才能正確編譯Symbian程序。具體要結(jié)合實(shí)際情況解決。
第二章 編譯與打包
【說明】由于Symbian中有很多新的概念和新的組織架構(gòu),這些基本的概念和組織架構(gòu)內(nèi)容較多,不便在這里展開,詳細(xì)地內(nèi)容需要參考Symbian方面的書籍。
打開VC6開發(fā)環(huán)境,點(diǎn)擊“File”--〉“New”--〉“Projects”--〉“Series 60 AppWizard v 1.9”,然后根據(jù)提示,一路點(diǎn)擊“Next”后可以完成項(xiàng)目框架的自動(dòng)生成。過程中詳細(xì)的分解說明詳細(xì)參考Symbian方面的書籍。
如果要將已經(jīng)建立好的工程導(dǎo)入到VC6.0中,比如我們將SDK中的例子HelloWorld轉(zhuǎn)換成一個(gè)VC6的項(xiàng)目,我們首先進(jìn)入\Symbian\6.1\Series60\Series60Ex\HelloWorld目錄。在這里我們可以看到,在Symbian中,一個(gè)Project通常是按inc, src, group等目錄組織(目錄詳細(xì)說明參考Symbian方面的書籍),group目錄里通常放的是項(xiàng)目文件,所以編譯時(shí)要先到這里。用命令提示符模式進(jìn)入剛才說的那個(gè)目錄下,然后執(zhí)行:
bldmake bldfiles
這個(gè)命令會(huì)在group目錄下生成一個(gè)abld.bat的批處理文件,并且會(huì)在
c:\Symbian \7.0s\Series60_v21_C\Epoc32\BUILD
下生成
\Symbian\7.0s\Series60_v21_C\Epoc32\BUILD\SYMBIAN\6.1\SERIES60\SERIES60EX\HELLOWORLD\GROUP
這個(gè)目錄,并在最底層目錄下生成一堆 .make文件。
然后,我們?cè)谕粋€(gè)目錄(……/GROUP)下執(zhí)行如下命令:
abld makefile vc6
這樣就會(huì)自動(dòng)生成vc6的dsw文件,位置在
\Symbian\7.0s\Series60_v21_C\Epoc32\BUILD\SYMBIAN\7.0s\SERIES60_V21_C\SERIES60EX\HELLOWORLD\GROUP\HELLOWORLD\WINS
然后我們就可以在VC6種打開這個(gè)Symbian工程了。
【注】如果是采用第一種方式(新建)生成的項(xiàng)目,是不需要執(zhí)行這兩個(gè)命令的,所有相關(guān)文件會(huì)自動(dòng)生成。(本人在實(shí)際工作中,發(fā)現(xiàn)用第一種方式(新建)生成的項(xiàng)目還是需要執(zhí)行如上這兩個(gè)命令的,否則沒有dsw文件存在)
對(duì)于如上兩種方法建立的項(xiàng)目,接下來就需要編譯生成目標(biāo)代碼了。
我們可以直接使用SDK提供的工具編譯Symbian工程,也可以使用VC6提供的集成環(huán)境來編譯轉(zhuǎn)化過的Symbian工程。編譯的結(jié)果存放在
\Symbian\7.0s\Series60_v21_C\Epoc32\Release\wins\UDEB\Z\SYSTEM\apps
目錄中。
3.1 使用SDK提供的工具編譯Symbian工程
我們?cè)谏弦还?jié)的那個(gè)位置(……/GROUP)繼續(xù)輸入:
abld build wins udeb
這個(gè)命令會(huì)編譯我們的程序,最后在
\Symbian\7.0s\Series60_v21_C\Epoc32\Release\wins\udeb
目錄下生成我們的helloworld,然后我們可以從開始菜單里運(yùn)行模擬器的debug版,在模擬其中就可以運(yùn)行helloworld了。
3.2 使用VC6編譯Symbian工程
我們直接打開工程dsw文件,VC自動(dòng)裝載轉(zhuǎn)化過的工程。按F7便可以直接編譯工程,編譯結(jié)果放在
\Symbian\7.0s\Series60_v21_C \Epoc32\Release\wins\UDEB
目錄中。然后我們打開模擬器debug版,就可以看到我們編譯好的工程了。
4.1 檢查程序
首先,在命令行格式下,進(jìn)入HelloWorld工程mmp文件所在目錄,輸入
bldmake bldfiles和abld build wins udeb
然后打開模擬器,檢測(cè)程序有無錯(cuò)誤。
4.2 編譯工程
在程序無錯(cuò)誤后,在命令行輸入
abld build armi urel
執(zhí)行這個(gè)命令之后會(huì)在目錄
c:\symbian\7.0s\Series60_v21_C \epoc32\release\armi\urel
生成HELLOWORLD.APP和HELLOWORLD.RSC兩個(gè)文件。
(如果該工程文件內(nèi)沒有資源,那么通過如下編譯只能產(chǎn)生.app結(jié)尾的文件,不能產(chǎn)生.rsc結(jié)尾的資源文件)
4.3 建立.pkg文件
在
c:\Symbian\7.0s\Series60_v21_C \Series60Ex\helloworld\sis
用記事本建立或者修改工程的pkg文件,內(nèi)容如下:
; HelloWorld.pkg
;
;Language - standard language definitions
&EN
; standard SIS file header
#{"HelloWorld"},(0x10005B91),1,0,0
;Supports Series 60 v 1.2
(0x101F8202), 0, 0, 0, {"Series60ProductID"}
;
"d:\symbian\6.1\series60\epoc32\release\armi\urel\HelloWorld.APP"-"!:\system\apps\HelloWorld\HelloWorld.app"
"d:\symbian\6.1\series60\epoc32\release\armi\urel\HELLOWORLD.rSC"-"!:\system\apps\HelloWorld\HELLOWORLD.rSC"
其中,前面
"c:\symbian\7.0s\Series60_v21_C\epoc32\release\armi\urel\HELLOWORLD.rSC"
是要打包安裝的文件,"!:\system\apps\HelloWorld\HELLOWORLD.rSC"是安裝的目標(biāo)位置。在其中要注意的是,我們?cè)谀繕?biāo)位置中用“!”代替了實(shí)際的盤符。這樣做得好處是在用戶安裝的時(shí)候,手機(jī)系統(tǒng)會(huì)提示用戶選擇要安裝的位置,這就給了用戶更大的靈活度。另外,在Symbian 系統(tǒng)中,安裝的應(yīng)用程序默認(rèn)位置是“!:\system\apps”。
編輯好pkg文件后,保存至相應(yīng)目錄。
(有時(shí)候如果沒有生成rsc文件,則在以上PKG文件中也不用包含rsc結(jié)尾的文件)
4.4 打包程序
在命令行中,在目錄
c:\Symbian\7.0s\Series60_v21_C \Series60Ex\helloworld\sis
下運(yùn)行命令makesis HelloWorld.pkg
posted on 2007-09-19 17:27
frank.sunny 閱讀(2055)
評(píng)論(4) 編輯 收藏 引用 所屬分類:
symbian 開發(fā)