VC6 Symbian開發環境配置

來源:互聯網
上載者:User

1 安裝SDK及VC
Nokia 根據手機的螢幕大小和價格高低把手機分成了多個系列,現在使用的系列有:Series 40、Series 60、Series 80 和Series 90。60系列採用Symbian os 6.1,然後又根據手機螢幕的特點對UI做了一些修改,這個被修改了的Symbian就被稱為Nokia的60系列平台。使用60系列的手機型號包括: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系列為例,介紹SDK的安裝過程。

1.1 安裝SDK
第一步,到Nokia論壇註冊,下載最新的SDK。Nokia 網站提供的Series 60 SDK for Symbian OS Nokia Edition SDK最新版本是v1.2,Series 60 SDK for Symbian OS的最新版本是v2.1。下載網址:http://www.forum.nokia.com/main/0,6566,034-4,00.html

註:Series 60 SDK v1.2有一個bug,模擬器不能正常使用,解決方案見本文尾部。

第二步,到http://www.activestate.com 網站下載最新的Active Perl Script 安裝程式。到http://www.java.com/en/download/manual.jsp 下載最新的J2RE。

第三步:安裝SDK,推薦為Symbian開發單獨建一個目錄,例如d:/Symbian而不是使用C:/program files等這樣的目錄。

第四步:安裝Active Perl和J2RE,安裝到預設目錄即可。

第五步:(1.2 不用配置環境變數)檢查環境變數設定。開啟系統內容變數tab,然後看看有沒有EPOCROOT,如果有的話,把它手動改成“/” 。改完之後應該是這個樣子的:

EPOCROOT = /Symbian/7.0s/Series60_v21_C/

然後,在系統PATH中加入

/epoc32/gcc/bin

以及 D:/Symbian/7.0s/Series60_v21_C/Epoc32/tools(注如果為/Epoc32/tools建立項目後VC會提示無法將指定的工程添加到項目中

實際上,Symbian SDK根本不用安裝,直接把epoc32目錄拷貝到一個機器上,然後照上述方法設定目錄和環境變數就可以了。

1.2 配置VC (注意項目要建立在SDk所在分區的根目錄下
如果我們使用的是VC 6.0,我們要保證系統至少打了SP3補丁,否則系統會有警告提示。如果我們使用的是VS.NET2003, 我們就只能安裝Series 60 SDK for Symbian OS v2.1,因為Series 60 SDK for Symbian OS Nokia Edition SDK v1.2在VS.NET2003無法正確建立工程。

如果要直接在vc6裡建立新項目,要把/Symbian/6.1/Series60/Series60Tools/ Application Wizard目錄下的 AvkonAppWiz.awx和AVKONAPPWIZ.HLP檔案拷貝到vc6的模板目錄C:/Program Files/ Microsoft Visual Studio/ Common/ MSDev98/ Template下。這樣我們就可以在VC的建立工程中看到Series 60 AppWizard v 1.9這個選項.

填入Project Name 以後,確認。

一路“Next”,一個最簡單的Symbian應用程式就建立好了。

如果要將已經建立好的工程匯入到VC6.0中,可以直接編譯,否則用命令提示字元模式進入項目的group目錄下,然後執行:

bldmake bldfiles

這個命令會在group目錄下產生一個abld.bat的批次檔,並且會在/Symbian /6.1/Series60/Epoc32/BUILD下產生/Symbian/6.1/Series60/Epoc32/BUILD/SYMBIAN /6.1/ SERIES60/SERIES60EX/HELLOWORLD/GROUP這個目錄,並在最底層目錄下產生一堆 .make檔案。

然後,我們在同一個目錄運行剛才產生的abld.bat:

abld makefile vc6

這樣就會自動產生vc6的dsw檔案,位置在/Symbian/6.1/Series60/Epoc32/BUILD/ SYMBIAN/6.1/ SERIES60/SERIES60EX/HELLOWORLD/GROUP/HELLOWORLD/WINS。然後我們就可以在VC6種開啟這個 Symbian工程了。

2 編譯
我們可以直接使用SDK提供的工具編譯Symbian 工程,也可以使用VC6提供的Integration Environment來編譯轉化過的Symbian 工程。編譯的結果存放在/Symbian/6.1/Series60/Epoc32/ Release/wins/UDEB/Z/SYSTEM/apps目錄中。

2.1使用SDK提供的工具編譯Symbian 工程
我們在上一節的那個位置繼續輸入:

abld build wins udeb

這個命令會編譯我們的程式,最後在/Symbian/6.1/Series60/Epoc32/Release/wins/UDEB目錄下產生我們的helloworld,然後我們可以從開始菜單裡運行模擬器的debug版,在類比其中就可以運行helloworld了。

2.2 使用VC6編譯Symbian 工程
我們直接開啟運行abld makefile vc6後產生的dsw檔案,VC自動裝載轉化過的工程。按F7便可以直接編譯工程,編譯結果同樣放在/Symbian/6.1/Series60 /Epoc32/Release/ wins/UDEB目錄中。然後我們開啟模擬器debug 版,就可以看到我們編譯好的工程了。

3 打包
我們以SDK 1.2提供的HelloWorld為例,製作可以在手機中安裝的.SIS檔案:

3.1.檢查程式
首先,在命令列格式下,進入HelloWorld工程mmp檔案所在目錄,輸入bldmake bldfiles和abld build wins udeb,然後開啟模擬器,檢測程式有無錯誤。

3.2.編譯工程
在程式無錯誤後,在命令列輸入abld build armi urel 。執行這個命令之後會在目錄d:/symbian/6.1/series60/epoc32/release/armi/urel產生 HELLOWORLD.APP和HELLOWORLD.RSC兩個檔案。

3.3.建立.pkg檔案

      註:用VC嚮導建立的項目時,在項目目錄下有命名為sis(install)的檔案夾下已經建立好了pkg檔案,只需要對安裝檔案及其路徑進行修改即可。另外手動產生PKG檔案時注意平台和app的UID
在d:/Symbian/6.1/Series60/Series60Ex/helloworld/sis 用記事本建立或者修改工程的pkg檔案,內容如下:

; 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"

其中,前面"d:/symbian/6.1/series60/epoc32/release/armi/urel /HELLOWORLD.rSC"是要打包安裝的檔案,"!:/system/apps/HelloWorld/HELLOWORLD.rSC"是安裝的目標位置。在其中要注意的是,我們在目標位置中用“!”代替了實際的盤符。這樣做得好處是在使用者安裝的時候,手機系統會提示使用者選擇要安裝的位置,這就給了使用者更大的靈活度。另外,在Symbian 系統中,安裝的應用程式預設位置是“!:/system/apps ”。

編輯好pkg檔案後,儲存至相應目錄。

3.4.打包程式
在命令列中,轉至pkg檔案所在目錄,運行命令makesis HelloWorld.pkg

註:1.2版Series 60 SDK後,如果沒有安裝在C盤,運行模擬器後會一直顯示series60,其實這是1.2版SDK安裝的bug.

解決辦法:
如果的確是安裝在其他邏輯磁碟機的話,可以通過修改模擬器的配置解決問題。
開啟 /Symbian/6.1/Series60/Epoc32/Data/epoc.ini
這 是一個文字檔,可以用Note開啟,一般情況下,該檔案中會含有形如:_EPOC_DRIVE_X path的設定。這是指定模擬器可以訪問的邏輯磁碟機的盤符X:並且將它指向path描述的目錄。模擬器啟動時需要確知2個邏輯磁碟機,rom Z盤和虛擬磁碟機D盤。Z盤是自動分配的,D盤需要在上述設定檔中聲明。請你檢查一下_EPOC_DRIVE_D 後面的路徑並把它改成X:/symbian/6.1/series60/epoc32/wins/d X是你安裝SDK的磁碟機(當然如果不把SDK安裝在根目錄的話,就寫全路徑)。重新啟動模擬器試試?

      其他版本安裝好後都配置完好了,不需要修改。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.