首页 > 学院 > 开发设计 > 正文

C++ SDK+Symbian开发入门之应用程序

2019-11-17 05:11:54
字体:
来源:转载
供稿:网友

  由于Series 60应用程序可以从命令提示符或IDE中建立,因此我们同时具体介绍了这两种方法。我们先从使用IDE提供的C++编译器建立运行在PC上的模拟器(也就是x86指令集)的项目开始。
我们同时使用了调试建立,因此可以使用符号调试信息和内存漏洞检查(动态地检查堆上分配的内存是否被正确地释放了)。

  从命令行建立程序

  打开命令提示符并把当前路径改变到包含Series 60 SDK的驱动器/文件夹中。导航到包含项目定义(helloworld.mmp)和组件描述(bld.inf)文件的文件夹——例如:

/Symbian/Series602_0/EMCCSoft/HelloWorld/group

  上面的代码用于Series 60 2.x项目,或者

/Symbian/6.1/Series60/EMCCSoft/HelloWorld/group

  上面的代码用于Series 60 1.x项目。并输入:

bldmake bldfiles

  一两秒钟之后这个命令就完成了,它没有任何可视的输出。它使用bld.inf和helloworld.mmp文件生成了一个新文件abld.bat。这个命令文件一般是根据需要生成的。与bld.inf和.mmp文件不同,abld.bat在不同的IDE之间是不能迁移的,并且不应该手动修改它。

  输入下面的命令编译和链接项目:

abld build wins udeb

—用于Visual C++
abld build winsb udeb
—用于Borland C++
abld build winscw udeb
—用于CodeWarrior

  Abld命令将为Series 60模拟器(wins、winscw或winsb)建立该项目(换句话说,就是编译和链接),并把调试信息包含在二进制可执行文件中。

  从IDE中建立程序

  项目(例如我们的示例HelloWorld应用程序)通常在某个IDE中建立和运行,因此我们需要使用bld.inf和HelloWorld.mmp文件建立特定IDE的项目文件。对于Visual C++来说,这种工作必须使用Symbian提供的工具在命令行上完成。对于Borland和CodeWarrior来说这是可选项,因为这两种IDE都可以导入bld.inf或.mmp文件来建立IDE项目文件。

  当我们从命令提示符开始工作的时候,假如abld.bat文件不存在,就有必要建立它;假如.mmp文件或bld.inf文件改变了也需要重新建立它。在命令提示符下输入下面的内容建立abld命令文件:

bldmake bldfiles

  使用微软Visual C++建立程序

  打开命令提示符,导航到HelloWorld项目的驱动器/项目文件夹,并输入:

abld makefile vc6

  这将建立适合微软Visual C++的项目和工作空间文件(helloworld.dsp和.dsw文件)。它们将位于/Epoc32/Build子文件夹结构下;其完整的路径依靠于SDK的位置,例如:

/Epoc32/Build/EMCCSoft/HelloWorld/HelloWorld/Wins

  通过在Visual C++中打开工作空间文件(helloworld.dsw),你可以编译或链接应用程序,这是通过按下F7或使用IDE菜单选项BuildBuild HelloWorld.app实现的。

  使用Borland C++IDE Builder 6建立程序

  假如你使用Borland C++Builder 6移动版(它是基于Borland C++Builder 6个人版并增加移动插件构成的),你可以简单地把HelloWorld项目的bld.inf文件导入IDE中。使用FileNewOther菜单选项,接着选择对话框中的Mobile(移动)数据页的Import Mobile application(导入移动应用程序)
浏览组件描述文件(bld.inf)的位置并打开它。

  使用Ctrl+F9或菜单中的PRojectMake建立程序。为了建立并运行,使用F9或菜单中的RunRun。请注重F9RunRun将导致项目每次都重新建立。假如仅仅在模拟器上运行,使用ToolsMobile Build ToolsRun Emulator工具移动建立工具运行模拟器)。IDE可能会提示你保存大量项目相关的文件,例如Borland项目(.bpr)、Borland项目组(.bpg)文件。这些文件保存的位置与你的bld.inf文件的文件夹相同。

  我们也可以执行独立的abld命令并且运行其它一些SDK工具(例如ToolsMobile Build Tools菜单上的aifbuildersisar)。

  使用Borland C++BuilderX建立程序

  使用任何一种商业C++BuilderX产品的时候,你都可以简单地把HelloWorld项目的bld.inf文件导入IDE中。

  使用FileNew并点击对象通道(Object Gallery)中的Mobile C++数据页。选择Import Symbian C++ Project(导入Symbian C++项目)。从下拉列表中选择正确的Series 60 SDK,浏览项目的bld.inf文件的位置。点击Next数据页,给项目取一个名字,点击Finish数据页,项目将会打开。按下Ctrl+F9ProjectMake Project选择。按下F9或选择RunRun Project或使用工具条项Make and Run运行项目。

  使用CodeWarrior IDE建立程序

  假如你使用的是Metrowerks CodeWarrior for Symbian(个人版2.5,其它的版本可能有稍微的不同),你可以简单地使用IDE菜单选项FileImport Project from .mmp File(文件.mmp文件导入项目)来导入HelloWorld.mmp文件。

  这将运行项目转换向导。选择该项目使用的SDK,选择(或浏览).mmp文件,选择一种WINSCW平台(或让它空着)。Build变量的默认值是UDEB。使用F7或菜单中的ProjectMake建立项目。

  CodeWarrior项目文件(.cmp、.xml、.resources和.pref文件)都会自动地建立在HelloWorld.mmp文件所在的目录中。

  你也可以选择通过命令行建立CodeWarrior IDE项目。运行前面描述的bldmake bldfiles,接着它会生成一个CodeWarrior IDE项目:

abld makefile cw_ide

  这将在目录中建立一个可以导入的项目文件HelloWorld.xml:

/Epoc32/Build/EMCCSoft/HelloWorld/HelloWorld/Winscw

  现在你可以使用CodeWarrior导入这个文件并生成一个本地项目(.mcp)文件。选择FileImport Project(导入项目)菜单选项,选中HelloWorld.xml文件,为项目选择一个名称(例如HelloWorld)。CodeWarrior将生成并载入该项目,你可以使用正常的IDE命令进行建立、运行、调试等操作了。 更多文章 更多内容请看C/C++技术学堂  C/C++技术专题  C/C++进阶技术文档专题,或

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表