Symbian常用工具用法说明

 

Symbian    2009-12-18 17:32   阅读22   评论0  
字号:    

From Forum Nokia Wiki

本文介绍symbian下常用的工具包括编译、打包、签名,通常我们使用IDE开发工具不会直接用到这些命令。但是了解这些命令的细节对我们开发调试还是有很大的帮助,我们可以知道IDE工具在完成编译、打包等操作都经历了哪些步骤,一旦某些环节出现问题我们可以很快的找出问题的根源。毕竟IDE工具也是以命令行工具为基础,掌握这些命令也会给我们带来更大的灵活性。

Contents [hide]
1 构建编译
1.1 bldmake命令
1.2 abld.bat
1.2.1 abld build
1.2.2 abld resource
1.2.3 abld clean
1.3 位图资源转换工具:bmconv.exe
1.3.1 从.bmp文件生成.mbm文件
1.3.2 查看.mbm文件内容
1.3.3 从.mbm文件导出.bmp文件
1.4 构建编译目标平台软件
2 打包签名
2.1 makesis
2.2 makekeys
2.3 signsis
2.4 软件打包签名过程
2.4.1 s60第二版
2.4.2 s60第三版
 

构建编译
bldmake命令
bldmake 工具用来根据当前目录下的组建描述文件(bld.inf)产生多个makefile,然后用这些makefile构建不同平台的组件.以下是bldmake的常用命令说明:

bldmake bldfiles - 根据bld.inf文件生成makefile及命令脚本
bldmake clean - 此命令会删除已经生产的makefile,通常在我们修改了mmp文件或bld.inf后需要清除原来的makefile然后重新生成
bldmake inf - 此命令会列出bld.inf文件的参数,你需要根据这些参数来编写和定制bld.inf.

 

abld.bat
abld是由bldmake命令根据bld.inf文件生成的批处理文件,用于执行不同的组件构建命令.以下是abld.bat的常用命令参数说明:

abld build
abld build 命令用于构建不同平台的目标组件. 使用方法: abld build [选项] 目标平台 构建类型

目标平台:

通常可能的目标平台有 arm4,armi,thumb, gcce,armv5, winscw ,wins, cw_ide,vc6,vs2003等.不同的SDK版本可能支持的目标平台稍有差别.这里分别包含了目标设备,模拟器环境,IDE环境几个平台环境.

构建类型:

其中每个目标平台又包括几个可能的构建类型如udeb(debug版本),urel(发布版本),all (debug和release).


使用gcce编译器生成发布版本

abld build gcce urel
构建模拟器环境调试版本并显示详细信息

 


abld build -v winscw udeb
abld resource
abld resource 用于我们编译资源文件,如 .rss .mbm .aif 等.当我们修改了资源文件可以运行此命令对资源文件进行编译 。

 


abld resource

 

abld clean
abld clean 命令用于删除所有生成的目标文件,需要对项目重新构建的时候运行此命令删除旧的目标文件.

 


位图资源转换工具:bmconv.exe
bmconv工具提供了位图文件和.mbm文件直接的转换的功能,我们可以通过此命令把若干个位图文件打包到.mbm文件中,也可以从.mbm文件中导出bmp文件。

从.bmp文件生成.mbm文件
把两个12位的位图1.bmp,2.bmp编译成 my.mbm

bmconv my.mbm /c121.bmp /c122.bmp

把两个12位的位图my.bmp,mymask.bmp编译成 my.mbm.并生成my.mbg

bmconv  /hmy.mbg  my.mbm  /c12my.bmp  /c12mymask.bmp

查看.mbm文件内容
.mbm文件是由一个或多个位图组成,我们可通过 bmconv /v参数查看.mbm文件的内容。

bmconv  /v my.mbm

从.mbm文件导出.bmp文件
bmconv /u input.mbm 1.bmp 2.bmp

 


构建编译目标平台软件
使用bldmake,abld工具即可完成译目标平台软件的编译构建以下是其使用步骤。步骤一:生成目标平台makefile及工具脚本

cd myapp/group
bldmake clean
bldmake bldfiles
步骤二:编译生成目标平台文件

abld clean
abld build gcce urel
打包签名
makesis
makesis命令可以根据.pkg文件制作目标设备的文件的打包安装程序(.sis) ,使用方法很简单进入到pkg文件目录执行 makesis myapp.pkg.

提示:我们可以通过运行 makesis -h 获取.pkg文件的详细语法参数

对编译后的目标文件进行打包

makesis myapp.pkg

 

makekeys
在s60 3rd中软件签名是必须的(在2nd中没有强制要求)签名的软件是被拒绝安装的.一般的软件发布测试可以通过自签名达到普通的使用目的(如果要使用扩展的capabilities 或安全性敏感的capabilities 则需要symbian sign) makekeys 命令可以帮我们创建私钥和自签名证书.其使用方法如下:

makekeys -cert [-v] [-len key-length] [-password password] -dname distinguished-name-string private-key-file public-key-cert

其中dname参数为自签名证书提供标识组织机构的信息字符串,字符串通过简写名称标识不同字段其简写标识含义如下.

CN Common Name CN=Joe Bloggs
OU Organisational Unit OU=Development
OR Organisation OR=Acme Ltd
LO Locality LO=
ST State ST=
CO Country CO=GB
EM E-mail address [email protected]
生成私钥及证书

makekeys -cert -password yourpasswd -dname "CN=Your Name EM=myemail@address CO=myOrg" mykey.key mycert.cer

 

signsis
在第三版中使用单独的signsis工具为软件进行签名. 在创建sis软件包及签名证书后通过signsis工具对软件进行签名。

signsis的用法: signsis input [output [certificate key [passphrase] ] ]

 


软件打包签名过程
在s60第二版中我们可以直接运行makesis myapp.pkg 对软件打包。软件签名不是强制的,当然从安全的角度考虑对发布的软件进行签名还是有必要的。以下介绍s60第二版和第三版的软件自签名过程。

s60第二版
步骤一:生成私钥和证书

cd myapp/group
makekeys -cert -password yourpasswd -dname "CN=Your Name EM=myemail@address CO=myOrg" mykey.key mycert.cer
步骤二:在.pkg文件中加入生成私钥及证书的名称

*"mykey.key","mycert.cer"
步骤三:使用makesis命令进行打包

makesis -p yourpasswd myapp.pkg mycert.cer mycert
s60第三版
步骤一:生成私钥和证书

cd myapp/group
makekeys -cert -password yourpasswd -dname "CN=Your Name EM=myemail@address CO=myOrg" mykey.key mycert.cer
步骤二:运行makesis命令进行打包

makesis myapp.pkg
步骤三:为生成的sis文件签名

signsis yoursis.sis myapp.sisx mycert.cer mykey.key yourpasswd
Retrieved from "http://wiki.forum.nokia.com/index.php/Symbian%E5%B8%B8%E7%94%A8%E5%B7%A5%E5%85%B7%E7%94%A8%E6%B3%95%E8%AF%B4%E6%98%8E"

你可能感兴趣的:(Symbian常用工具用法说明)