最終更新日: 2005/1/10
Little Palmware

Palmware Development Tips

PRC-Tools for Garnet

これまで、Palm OS 4をターゲットにPalmwareを開発してきましたので、Palm OS 5 Garnet用のAPIを使用するためにSDKをUpgradeする必要があります。これを機にPRC-Toolsも入れ替えることにしました。

Palmwareの開発方法は、CodeWarriorを使ってGUIで開発することができますが、高価なソフトですので気軽にPalmware開発を始めることはできないかもしれません。また、私のようにFreewareとして開発している場合には、開発ソフトに費用をかけることもできませんし。CodeWarriorを使ってしまうとその費用をユーザに転嫁してしまい、FreewareではなくSharewareにせざるをえなくなると、せっかく使ってもらっている方々へ迷惑をかけてしまいます。
そこで、ここではFreeの開発ツールであるPRC-Toolsを使ったPalm OS 5 Garnet用の開発環境の作成方法について説明します。
なお、この記事を書いているのは2005年1月ですので、古くなってきた場合にはあくまでも参考として使用してください。

Palm Hackers Salon『PRC-Toolsのインストール』を参考にし、新しい情報を補足する形で説明しますので、こちらも参照しておいてください。

Cygwin PRC-Toolsのインストール

まず Cygwin をインストールします。
  1. Cygwin Information and Installation (http://cygwin.com/)にWebブラウザでアクセスします。
  2. トップページ中にある [Install Cygwin now]をクリックし、setup.exeをダウンロードします。
  3. ダウンロードしたsetup.exeを実行します。
  4. ここでは"D:\cygwin"にインストールします。
  5. ダウンロードサイトに http://prc-tools.sourceforge.net/installを追加します。
  6. [Devel]の中から
    • prc-tools
    • prc-tools-arm
    • prc-tools-htmldocs
    • pilrc
    追加します。
  7. インストールします。

Palm OS Garnet SDKのインストール

次にPalm OS Garnet SDKをインストールします。
  1. PalmSource (https://www.developerpavilion.com/palmos/)にWebブラウザでアクセスします。
  2. 自分のEmail,passwordを入力してSign-inします。登録していない方は Register してください。
  3. [Palm OS Developer Tools][Core Palm OS SDK] をクリックします。
  4. Toolの中から
    • Palm OS Garnet SDK (68K) R3 No Installer
      (PalmOS_5_SDK_68K_R3_no-install.zip)
    • Palm OS Garnet SDK (68K) R3 PRC tools
      (palmos-sdk-5.0r3-1.zip)
    をダウンロードします。
  5. palmos-sdk-5.0r3-1.zipをZipファイル解凍ソフトで使って "D:\PalmDev\sdk-5r3" に解凍します。
  6. PalmOS_5_SDK_68K_R3_no-install.zipを解凍します。
    "Palm OS Support\Incs"フォルダを"D:\PalmDev\sdk-5r3"フォルダにコピーします。

Sony SDK 5.0のインストール

ついでにSony Clie用のSDKをインストールします。
  1. 「クリエ」/Developer (http://www.jp.sonystyle.com/Clie-dev/)にWebブラウザでアクセスします。
  2. [開発ツール]をクリックします。
  3. Sony SDK 5.0をクリックしてダウンロードします。 cliesdk50j.zipを解凍したら、"incs"フォルダを "D:\PalmDev\sdk-5r3" にコピーします。
SonyのヘッダファイルをPRC-Toolsでmakeするとwarningやerrorがたくさんでてきます。 そこで、[PalmTech] PRC-Tools for Clieを参照してヘッダファイルを修正してください。
具体的には下のようにトラップ番号をenum型から#defineするように修正します。
#define	xxxxx	(sysLibTrapCustom + 0)
#define	yyyyy	(sysLibTrapCustom + 1)
#define	zzzzz	(sysLibTrapCustom + 2)
...
たくさんエラーが出るので、出ている個所から順番に修正していった方がいいでしょう。

環境設定

  1. OSのPATH環境変数にCygwinをインストールしたフォルダ名(D:\PalmDev)を追加してください。
  2. Cygwinのプロンプトを開きます。
  3. Palm OS SDKをインストールしたフォルダをマウントします。
    mount -tf "D:\PalmDev" /PalmDev
  4. palmdev-prepと入力し、PRC-Toolsを設定します。
    $ palmdev-prep
    Checking SDKs in /PalmDev
      sdk-5r3       headers in 'Incs', libraries in 'lib'
      and material in /PalmDev used regardless of SDK choice
        (common)    headers in 'include', libraries in 'lib'
    
    When GCC is given no -palmos options, SDK '5r3' will be used by default
    
    Writing SDK details to configuration files...
    palmdev-prep: warning: can't open '/PalmDev/sdk-5r3/Incs/Core/CoreTraps.h': No error
    ...done
    
  5. このようにエラーが表示されなければOKです。

PilRCのオプション

PalmwareのリソースをコンパイルするためのPilRCですが、最新のCygwinをインストールすると Version 3.2がインストールされます。その場合、日本語Palm OSでは"..."という文字列が"□"のように文字化けしてしまいます。
そのため、MakefileなどでPilRCのオプションに -noEllipsisを指定します。これで文字化けが解消されます。