该文档在网上比较多见,我只是找来结合自己的安装做了些增补,增补以红色字体示出
第一章 环境搭建
Symbian是Nokia公司开发的一款智能手机操作系统。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系列为例,介绍开发环境的安装过程。
Symbian开发环境一般分为两大部分:集成开发环境(含编程语言)、专有开发工具。程序员在集成开发环境下按Symbian规范要求编写程序代码,然后用专有开发工具编译、打包、发布Symbian平台执行程序。
为统一开发规范,Symbian开发环境和编程语言一律采用如下配置:
集成开发环境(IDE):Microsoft Visual Studio 6.0,C++
专有开发工具:Series 60 SDK for Symbian OS 2.1、Active Perl 5.8.8、JRE1.4.2
标准的Microsoft Visual Studio 6.0安装步骤,这里不做说明。
注意:必须包含Visual C++,必须打SP3的补丁。(现在有SP6补丁,直接打SP6补丁就可以了)
第一步:安装SDK,推荐为Symbian开发单独建一个目录,统一为:“C:\Symbian”不允许其他的目录出现。
第二步:安装Active Perl和J2RE,安装到默认目录即可。
第三步:检查环境变量设定。打开系统环境变量tab,然后看看有没有EPOCROOT,如果有的话,把它手动改成“\” 。改完之后应该是这个样子的:
EPOCROOT = \
然后,在系统PATH中加入 \epoc32\tools目录以及\epoc32\gcc\bin目录就可以了。
(这里实际操作时如果没有EPOCROOT变量项则新建一个环境变量名为“EPOCROOT”使其变量值为“\Symbian\7.0s\Series60_v21_C\”,同时在PATH中的设置如上所述。)
把
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这个选项。
至此,SYMBIAN的开发环境已经全部搭建完毕。
注意:如果安装了类似于ORACLE这样自带Perl和Java环境的软件,需要修改环境变量才能正确编译Symbian程序。具体要结合实际情况解决。
第二章 编译与打包
【说明】由于Symbian中有很多新的概念和新的组织架构,这些基本的概念和组织架构内容较多,不便在这里展开,详细地内容需要参考Symbian方面的书籍。
打开VC6开发环境,点击“File”--〉“New”--〉“Projects”--〉“Series 60 AppWizard v 1.9”,然后根据提示,一路点击“Next”后可以完成项目框架的自动生成。过程中详细的分解说明详细参考Symbian方面的书籍。
如果要将已经建立好的工程导入到VC6.0中,比如我们将SDK中的例子HelloWorld转换成一个VC6的项目,我们首先进入\Symbian\6.1\Series60\Series60Ex\HelloWorld目录。在这里我们可以看到,在Symbian中,一个Project通常是按inc, src, group等目录组织(目录详细说明参考Symbian方面的书籍),group目录里通常放的是项目文件,所以编译时要先到这里。用命令提示符模式进入刚才说的那个目录下,然后执行:
bldmake bldfiles
这个命令会在group目录下生成一个abld.bat的批处理文件,并且会在
c:\Symbian \7.0s\Series60_v21_C\Epoc32\BUILD
下生成
\Symbian\7.0s\Series60_v21_C\Epoc32\BUILD\SYMBIAN\6.1\SERIES60\SERIES60EX\HELLOWORLD\GROUP
这个目录,并在最底层目录下生成一堆 .make文件。
然后,我们在同一个目录(……/GROUP)下执行如下命令:
abld makefile vc6
这样就会自动生成vc6的dsw文件,位置在
\Symbian\7.0s\Series60_v21_C\Epoc32\BUILD\SYMBIAN\7.0s\SERIES60_V21_C\SERIES60EX\HELLOWORLD\GROUP\HELLOWORLD\WINS
然后我们就可以在VC6种打开这个Symbian工程了。
【注】如果是采用第一种方式(新建)生成的项目,是不需要执行这两个命令的,所有相关文件会自动生成。(本人在实际工作中,发现用第一种方式(新建)生成的项目还是需要执行如上这两个命令的,否则没有dsw文件存在)
对于如上两种方法建立的项目,接下来就需要编译生成目标代码了。
我们可以直接使用SDK提供的工具编译Symbian工程,也可以使用VC6提供的集成环境来编译转化过的Symbian工程。编译的结果存放在
\Symbian\7.0s\Series60_v21_C\Epoc32\Release\wins\UDEB\Z\SYSTEM\apps
目录中。
3.1 使用SDK提供的工具编译Symbian工程
我们在上一节的那个位置(……/GROUP)继续输入:
abld build wins udeb
这个命令会编译我们的程序,最后在
\Symbian\7.0s\Series60_v21_C\Epoc32\Release\wins\udeb
目录下生成我们的helloworld,然后我们可以从开始菜单里运行模拟器的debug版,在模拟其中就可以运行helloworld了。
3.2 使用VC6编译Symbian工程
我们直接打开工程dsw文件,VC自动装载转化过的工程。按F7便可以直接编译工程,编译结果放在
\Symbian\7.0s\Series60_v21_C \Epoc32\Release\wins\UDEB
目录中。然后我们打开模拟器debug版,就可以看到我们编译好的工程了。
4.1 检查程序
首先,在命令行格式下,进入HelloWorld工程mmp文件所在目录,输入
bldmake bldfiles和abld build wins udeb
然后打开模拟器,检测程序有无错误。
4.2 编译工程
在程序无错误后,在命令行输入
abld build armi urel
执行这个命令之后会在目录
c:\symbian\7.0s\Series60_v21_C \epoc32\release\armi\urel
生成HELLOWORLD.APP和HELLOWORLD.RSC两个文件。
(如果该工程文件内没有资源,那么通过如下编译只能产生.app结尾的文件,不能产生.rsc结尾的资源文件)
4.3 建立.pkg文件
在
c:\Symbian\7.0s\Series60_v21_C \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"
其中,前面
"c:\symbian\7.0s\Series60_v21_C\epoc32\release\armi\urel\HELLOWORLD.rSC"
是要打包安装的文件,"!:\system\apps\HelloWorld\HELLOWORLD.rSC"是安装的目标位置。在其中要注意的是,我们在目标位置中用“!”代替了实际的盘符。这样做得好处是在用户安装的时候,手机系统会提示用户选择要安装的位置,这就给了用户更大的灵活度。另外,在Symbian 系统中,安装的应用程序默认位置是“!:\system\apps”。
编辑好pkg文件后,保存至相应目录。
(有时候如果没有生成rsc文件,则在以上PKG文件中也不用包含rsc结尾的文件)
4.4 打包程序
在命令行中,在目录
c:\Symbian\7.0s\Series60_v21_C \Series60Ex\helloworld\sis
下运行命令makesis HelloWorld.pkg
posted on 2007-09-19 17:27
frank.sunny 阅读(2046)
评论(4) 编辑 收藏 引用 所属分类:
symbian 开发