下一篇: S60v5 编程环境的搭建(2)

首先要下载相应的支持文件:

1.ActivePerl
http://www.activestate.com/activeperl/downloads

2.Symbian SDKs
http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html
3.Carbide.c++
http://www.forum.nokia.com/info/sw.nokia.com/id/dbb8841d-832c-43a6-be13-f78119a2b4cb.html

依次安装这些程序。网上(包括S60_5th_Edition_SDK_v1.0的开发文档。真不知道这文档多少年没更新了)说安装完后,要配置运行环境,其实最新的安装包已经可以自动配置了。可以在“开始---程序”里找到“Carbid.c++ v2.7”,点击其中的“Configure environment for WINSCW command line”,就可以打开自动配置了。

我先看了S60_5th_Edition_SDK_v1.0的开发文档,然后按照它里面的说明来开始测试一个程序---HelloWorldBasic。在SDK包的根目录中找到S60CppExamples/helloworldbasic/group。运行cmd,并定位到这个目录。依次执行bldmake bldfiles和abld build winscw udeb命令。然后执行epoc(S60模拟器)。这个时候问题来了,怎么看见硬盘指示灯狂闪了一阵后就什么都没有呢?模拟器没有运行!没有头绪,明明这一句正确执行了,硬盘也有反应,证明有很多文件被加载了,怎么模拟器就不开呢?上网搜了很久,发现原来是模拟器不支持长名称的环境变量。在“我的电脑”上单击鼠标右键---属性---高级---环境变量---用户 环境变量,将TEMP和TMP的变量值从%USERPROFILE%/Local Settings/Temp改为其他的值,比如“C:/Temp”。这样再运行模拟器就可以了!真不知道Nokia公司是怎么搞的,以前都没见过这么不好用的SDK。看看别人J2ME、Android、Windows Mobile Phone等的开发环境多好,还中文文档支持。╮(╯▽╰)╭真是让我们这些用S60v5的人……好不容易模拟器运行了,却发现效果实在太差,跟其他的没法比,还很卡!设置好参数,在Software里就可以找到刚才得程序了。

从安装到试用它的模拟器,一次次让我失望。用的热情都减半了。一开始就这样,真是……虽然听了很多次,说Nokia公司要开发别的系统,这个也不能这样啊!起码它以前出产的手机都是用的这些老操作系统啊。支持实在太差了。算了,也许是自己能力不够,弄不好也说不定。

弄完这些,我打开Carbide.c++才发现原来这个可以很方便的编译、运行程序。但是在里面竟然没找到“打开工程”按钮,真是晕啊,它就不打开以前的工程吗?(后来发现原来有个"Import",定义到工程的group目录就可以打开工程了,嘿嘿,不好意思)我再把HelloWorld程序在上面运行了一下,也是因为模拟器的原因弄了半天。总的感觉不太好用啊~

不知道那些高手们都是用什么来开发S60程序的。

(后记:最近用Nokia Qt SDK来编写S60的程序还感觉挺方便的。安装简单,模拟器运行环境也好:)让我又有了"掰"自己的Nokia5230的热情了,哈)

不发牢骚了,下面记录下有关模拟器的一些东西(都是被模拟器害的,最不喜欢记东西了,不过这个还是得记下的)

摘自《智能手机操作系统编程--Symbian及60系列》
SDk根目录下的epoc32/是导向其他子目录的路径,在这些子目录中存放一些头文件和针对不同目录平台的库。下面分别对各个目录的内容进行说明。
(1)epoc32/include/
在此可以找到系统所包含进来的所有头文件。必须在项目的.mmp文件中声明这一路径,以避免编译一个项目时失败。
(2)epoc32/release/
在release/子目录下有四个不同的平台搭建,如下所述。
wins/:针对以Microsoft Windows为宿主的模拟器的目标平台,运行于PC上的单进程环境。
armi/:针对ARM处理器硬件的构建目标,建议用于第三方开发者。
thumb/:针对ARM处理器硬件的构建目标,其二进制代码具有较小的内存占用空间。
winc/:针对Symbian工具和链接类应用的特殊构建。
每一种构建可以为不同的变种提供例库:对urel/子目录下的发布模式或对于udeb/子目录下的调试模式。用于第三方开发伙伴的最典型的平台构建是armi和wins,分别针对目标设备和wins模拟器。从位于epoc32/release/wins/目录下的各个构建变种,可以找到z子目录。当运行模拟器时,这个子目录会被映射为模拟z:驱动器,而模拟器会把这个驱动器看作设备上的ROM。
(3)epoc32/wins/在wins/目录下可以找到子目录c。当运行模拟器时,这个c子目录被映射为模拟c:驱动器,Symbian OS系统和Symbian OS应用都可以在这里存储自己的数据。模拟器把这个驱动器视为目标机器上的RAM。
(4)epoc32/build/
(4)epoc32/build/后面会跟随一个由bldmake工具创建的动态路径,其中存储项目控制文件和针对Micros Visual C++的中间文件。
(5)Example/
大多数Symbian OS SDK还提供许多范例应用。一些具有源代码的基本范例程序对入门者来说极具参考价值。

以上这些前人写的东西可能跟最新的SDK有点不一样,但是还是有参考价值的。

S60v5 编程环境的搭建相关推荐

  1. S60v5 编程环境的搭建(2)

    以前自己也尝试过在搭建Windows XP下搭建Symbian S60v5系统的编程环境.(那一次也是花了不少气力~~~)怎么说呢,其繁琐的安装过程,缓慢的模拟器,十分不熟悉的IDE环境,都让人很不舒 ...

  2. Linux下eclipse中shell脚本编程环境的搭建

    注意:本文所用到的linux发行版是fedora 15.如果用fedora 15以上的版本可能会有问题.至于解决方案或者是搭建方法我会尽量抽出时间写一篇新的博客... 本文主要是介绍在linux平台下 ...

  3. 基于C#(Visual Studio 2013)的AutoCAD2016二次开发(一)编程环境的搭建

    机械设计中一般都采用AutoCAD设计软件,在复杂 CAD问题或特殊用途的设计中,依据原有软件的功能往往难以解决问题,在此情况下,只是会使用软件的基本功能是不够的.本着自学和相互交流的原则,撰写如下学 ...

  4. 【Python学习教程】Python编程环境搭建

    文章目录 Windows安装Python(图解) 关于 IDLE Linux(Ubuntu)系统安装Python 更新 Python 版本 重新安装 Python 1) 下载源代码 2) 编译 小技巧 ...

  5. 机器学习Python编程环境搭建

    引言 使用Python作为机器学习的编程工具,具有很多优点,例如Python语法简洁,表达能力强(简短的几行代码抵得上其它语言数十行),第三方支持库多."工欲善其事,必先利其器", ...

  6. 《OpenGL超级宝典》编程环境配置

    最近在接触OpenGL,使用的书籍就是那本<OpenGL超级宝典>,不过编程环境的搭建和设置还是比较麻烦的,在网上找了很多资料,找不到GLTools.lib这个库.没办法自己就借助源码自己 ...

  7. 【Qt入门第1篇】 基础(一)Qt开发环境的搭建和hello world

    导语 从这一篇我们正式开始Qt编程.本篇主要讲解Qt编程环境的搭建.为了适应大多数读者的需要,同时为了避免系统环境的不同而产生不必要的问题,这里选择使用Windows系统的Qt版本.因为在前面几十篇中 ...

  8. linux 运行lua脚本语言,你知道在linux下搭建lua脚本语言的编程环境?

    描述 lua是脚本语言的一种,具体的该脚本的介绍可百度,本文介绍Linux系统下搭建lua编程环境的步骤,以及在搭建过程中碰到的种种问题. 一.下载获取lua源码 地址http://www.lua.o ...

  9. python环境搭建_搭建Python编程环境

    说明:本文面向信息技术新教材环境下的中学生或者编程小白.Python作为新教材落实计算思维的主要载体,有其独特的魅力.千里之行始于足下,搭建Python运行环境是跨出进入新世界大门的第一步. 搭建Py ...

最新文章

  1. Jenkins安装目录说明
  2. Oracle_Net_Configuration_Assistant_配置步骤
  3. spark的内存过小报错
  4. java消费kafka数据之后,进行堆积之后在插入数据库
  5. C语言宏定义中UL的含义
  6. Nignx出现failed (3: The system cannot find the path specified)问题
  7. php怎么获得产品id,php – 如何获取Woocommerce产品中的Variation ID
  8. 怎么设置vscode界面大小_vscode怎么放大界面
  9. linux 磁盘控制器,linux – 戴尔R710上的PERC 6 / i RAID:单个控制器上的慢速磁盘…… RAID10?...
  10. 计算机硬件检测维修资料,计算机硬件检测维修实训台 Computer hardware detection and maintenance training bench...
  11. 阿里 mysql cluster_MySQL Cluster集群安装及使用-阿里云开发者社区
  12. JMETER HTTP 请求
  13. ASR开发工作笔记0001---Eclipse DS-5-报错Cannot checkout an uncounted license withini a Windows Terminal Servi
  14. 对鸢尾花数据集和月亮数据集,分别采用线性LDA、k-means和SVM算法进行二分类可视化分析
  15. C#读取网络流,读取网络上的js文件
  16. 软考-中级-网络工程师-2021年下半年-上午真题整理
  17. 电子商务网站PPT选择服务器,第8章 电子商务系统规划与建设课件.ppt
  18. 机器人城阳_玄德机器人墙板码板机城阳性能优异
  19. IT从业者创业公司生存指南:创业初期 ---- 指点江山,激扬文字,粪土当年万户侯
  20. IPv6技术详解:基本概念、应用现状、技术实践(上篇)

热门文章

  1. Android 面试必备之 JVM 相关口水话,flutterpageview动画
  2. Kali Linux基础
  3. sql 数据与程序的物理独立性和逻辑独立性
  4. 国内最快的jquery cdn
  5. Java通过Jolt调用Tuxedo服务
  6. Java反射的基本理解
  7. 三维空间中的旋转--旋转向量
  8. Python数据分析中数据预处理:编码将文字型数据转换为数值型
  9. 使用SVM/k-NN模型实现手写数字多分类 - 清华大学《机器学习实践与应用》22春-周作业
  10. Android 媒体播放框架MediaSession分析与实践