Symbian OS プログラムの始め方
Article Metadata
0.5: C++ の基本についての知識はありますか?
1: アプリケーションをテストするためのスマートフォンがありますか?
- もし無くても、問題ありません。セクション3に進み、最新のSDK を選んでください。通常、SDK は新しいリリースの度に複雑になって行き、問題を解決するための大量の情報は、新SDK に関する情報とよりなっていくことに注意してください。
- SDKをインストールすることで、作成したアプリケーションを、S60 シミュレータ環境でテストできるようになります。
2: フォーラム・ノキアの端末(電話機)情報ページにある端末情報を見ます。
- もし、ドキュメントに"Developer Platform: S60 3rd Edition"とあるならば、その端末用のSDK は、S60 3rd SDK MR です。(これは、S60 3rd SDK の改良版です。)
- もし、ドキュメントに"Developer Platform: S60 3rd Edition, Feature Pack 1"とあるならば、その端末用のSDKは、S60 3rd SDK FP1です。
- もし、2種類の端末、"S60 3rd Edition" と"S60 3rd Edition, Feature Pack 1"があるならば、推奨されるSDKはS60 3rd SDK MR です。このSDKで作成されたアプリケーションは、(下位互換性により)両方の端末で動作するはずです。
- もし、2種類の端末が、"S60 2nd Edition, Feature Pack X" と"S60 3rd Edition, Feature Pack X"の場合は、両方の端末のために、1つだけのSDKの使用は不十分です。バイナリとソース・コードに互換性がないためです。
- S60プラットフォーム、既存のバージョン、およびその違いに関しての詳細は、こちらをご覧ください。
3: SDK のダウンロードページを開きます
- しかし、まだSDKをダウンロードしないでください!
- "Release note" セクションを見て、選んだSDKに対応するリリース・ノートをダウンロードして読んでください。SDKのリリース毎に違うバージョンのリリース・ノートがあるので注意してください。これには、サポートしているさまざまなツールセットに関する記述があります。決定する前に、これらを全て読んでください。
- このドキュメントには次のことに関する記述があります:
- インストールする必要がある、ActivePerlやJava 実行環境(Java Runtime Environment-JRE) 等のサードパーティ製のいくつかのソフトウェア
- どのコンパイラがサポートされているか(いくつかは無料で、他は要ライセンス)
- どのIDEがサポートされているか(いくつかは無料で、他は要ライセンス)
- 既知の問題(インストール時の問題、既知のバグや制限など)
- 注意: これを記述している時点では、ノキア提供のツールやSDKは、マイクロソフトのウィンドウズ・ビスタ(tm)上で使用することを意図していません。開発者コミュニティによる非公式サポートが、このwikiにいくつかあります。例えば、Using Nokia SDKs and Tools on Windows Vista です。
- どの構成が一番良いか調べるのは一度だけです。。。
4: 選択したSDKやツール、IDEをダウンロードします。
- パッケージをインストールします(まず必須ツール、次にIDE、最後がSDK(s)です)。ツールの設定の調整に確信がないかぎり、ツールはデフォルトの場所にインストールしてください。
- それぞれのツールが動作することを確認して(つまり、それぞれをコマンド・ラインから"-version" オプションを付けて実行します)、要求されるバージョンを満たすことを確認してください。(システムにこれらのツールが入っていないものがあるかも知れないので、それを見つけ、ステップ5を完了後に再評価してください。)
C:\>perl -version
This is perl, v5.6.1 built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)
Copyright 1987-2001, Larry Wall
Binary build 638 provided by ActiveState Corp. http://www.ActiveState.com
ActiveState is a division of Sophos.
Built Apr 13 2004 19:24:21
... snip ...
C:\>java -version
java version "1.5.0_05"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_05-b05)
Java HotSpot(TM) Client VM (build 1.5.0_05-b05, mixed mode, sharing)
C:\>mwccsym2.exe -version
Nokia Codewarrior C/C++ Compiler for Windows/x86.
Copyright (c) 2005, Nokia Corporation
All rights reserved.
Version 3.2.3 build 446 (Build 446)
Runtime Built: Aug 15 2005 08:07:54
- 注意: ノキア・コンパイラは、S60 SDKに含まれていません。Carbide.c++ やCarbide.vs に含まれています。しかし、コンパイラがインストールされても、デフォルトでは、コマンド・ラインでは使用できないでしょう。どうやってWINSCW プラットフォーム用にコマンド・ラインでビルド出来るようにするかについては、Carbide のドキュメントを参照してください。
C:\>arm-none-symbianelf-gcc.exe -v
Reading specs from ... snip ...
Configured with: ... snip ...
Thread model: single
gcc version 3.4.3 (release) (CodeSourcery ARM Q1C 2005)
C:\>armcc
ARM/Thumb C/C++ Compiler, RVCT2.2 [Build 503]
Usage: armcc [options] file1 file2 ... filen
Main options: ... snip ...
5: 理解したと確信するまで、SDKのドキュメントを読んでください:
- Symbian OS とは何か?また、今までプログラミングしてきたOSと何が違うか?
- モバイル端末のためのプログラミングが意味するもの(制約と機会)
- OS の構造と、主な枠組み
- コード規約
- システム・エラー / パニック / リーブ(leave) と、それらの処理方法や記録方法
- 実際の端末とSDKのエミュレータの違い
- 構築(build)システムとツールについて。もっとも重要な"devices"コマンドについて知ってください。
6: 急ぎすぎです。。。セクション5に戻ってください!
7: ウィンドウズのスタート・メニューから、エミュレータを起動してください
- さわってみて、どのアプリケーションが利用可能か、どうやって操作するのか、メニューにある"隠し(hidden)"オプションは何か、学んでください。ほとんど全てのことが、SDKのヘルプに記述されています。
8: これで、最初のアプリケーションを構築する準備が整いました:
- ウィンドウズのコマンド・プロンプト・ウィンドウを開き、作業ディレクトリを%EPOCROOT%S60Ex (いくつかのSDK では、Series60Ex)にします。
- もし、EPOCROOT が何なのかわからなければ、セクション5に戻ってください。
- 利用可能な例題(例えば、HelloWorld* バージョンの一つ)を選び、ディレクトリ構造を進んでください。選んだ例題で、さらに深いgroup フォルダに進みます。
- コマンド・プロンプトで次のコマンド列を入力します:
…\group> bldmake bldfiles
…\group> abld makefile all
…\group> abld resource
…\group> abld build winscw udeb
…\group> epoc
- 言うまでも無く、コマンドを実行中にエラー・メッセージがあったならば、作業を止め、メッセージを確認して、ドキュメントを読み、必要ならばエラーを修正してください。現在の構築に影響が無いとわかっているならば、エラー・メッセージを魅し出来ます。全てがうまく行ったならば、最後のコマンドでエミュレータを起動し、アプリケーションをテストできます。
…\group> abld build gcce urel
…\group> makesis ..\sis\helloworld.pkg
- 最後の2つのコマンドで、ターゲット端末用のアプリケーションを構築し(セクション5に戻り、SDKとツールでサポートされているターゲットは何か見てください)、インストール・キット(sisファイル)を構築します。それを端末に転送する前に、署名する必要があるかも知れません。アプリケーションを端末にインストール後、テストします。
9: すぐにコーディングを始めたいですか? はやる気持ちをおさえてください! :)
- 最初に、hello world (や他の選んだ)例題を完全に理解することを確実にする必要があります。
ファイル・ブラウザ上のプロジェクト・ディレクトリを開き、その内容と構造を分析してください。ディレクトリの各ファイルの役割を完全に理解するまで、先に進まないでください。
10: これから、一人で進んで行きます。。。
。。。しかし、Symbian の開発者コミュニティは助けになるでしょう。
- フォーラム・ノキアの掲示板にあるCarbide.c++ and CodeWarrior Toolsを見てください。
- 助けを求める前に、読んで読んで読んでください。。これらの投稿を見逃さないでください。Symbian OS C++ プログラミング)が、始めるにあたって非常に役に立つ本です。
- 問題を議論するためにこのフォーラムを利用できますが、"賢く(the smart way)" 利用してください。


(no comments yet)