記述日:2004年4月〜5月

最新版Palm開発環境の構築

 Windows XPをが動作するPCを自作し、新たにPalmware開発環境を整えましたので、 ここにメモをしておきます。
 構築する環境は、 以前と同じくWindows上でUnixの機能を実現するcygwinです。

 プログラミングに必要な環境は、以下になります。


インストール手順

まず、ここのサイトに 行き、 DocumentationセッションのInstallation instructionsへ行きます。 そこには、Prebuilt binary packagesのセッションがあるので、それを利用します。コンパイルする実力のある方は、ソースからどうぞ。
私の場合、Microsoft Windows環境なので、Installing prc-tools on MS Windows with Cygwinというペー ジへ行きます。
Before you beginのところから始めます。
もし、Cygwin B20.1とprc-tools 2.0がインストールされていた場合は、既に古く(4年前)、コンパチでもないので、消しなさ いと書かれていますので、従ってください。私は、とりあえず、元のファイルは、コピーして取ってお きました。 実際には、不要でした。

次に、cygwinのページへ飛びます。 そこで、cygwinInstallを実行します。現在のバージョンは、1.5.9-1(2004/5/28)でした。このバージョンは、次々新しくなり ますが、あまり気にしなくてよいと思います。

cygwin-icon このアイコンを押してインストールを開始します。(ダウンロードしておくと後々便利かもしれません。私は、デスクトップに置きました。)以下の画面が出ま す。


次へを押し、以下の画面から設定が始まります。


Setupでは、DOSに設定した他、特に変更せず、デフォルトのままで次へのボタン を押していきます。






以下のダウンロードサイトの設定の画面でちょっと細工が必要です。

User URL:の欄にhttp://prc-tools.sourceforge.net/installを記入して、Addを押して下さい。
その後、追加されたサイトと、デフォルトで書かれているDownload Siteから1つをコントロールを押しながら選択します。
これにより、都合2つのダウ ンロードサイトが選択された状態になり、次へのボタンを押すと、
あとは、機械に任せてセットアップさせます。

そうすると、以下の画面に変わります。

Develカテゴリから、binutilsとmakeを選択し、インストールさせま す。+の部分をクリックして、展開して選択して下さい。デフォルトで はSkipになっているようです。 Skipと書かれている所をクリックすると、数字に変わりますが、その番号は、インストールするバージョンになります。場合により、複数の番号がクリック するたびに出てきますが、最新のものを選択して構わないと思います。古い方が安定している場合もありますので、適当に選択してください。
他に、prc-toolsとpilrcをインストールして下さい。それ以外にもunixのツール群がありますので、必要だと思われるものは、選択して下さ い。

ここで、次へを押すとインストールが始まり、以下の画面が出ます。私は、2つともチェックしましたが、デフォルトは、チェックなしです。


以下の画面が出ると、完了です


現在のインストーラでは、これだけで、cygwin、prc-tools、pilrcが同時にインストールできてしまいますので、楽になりました。

エミュレータ、シミュレータのインストール

エミュレータ、シミュレータは、以下のURLからダウンロードしてインストールして下 さい。
Palm社
エミュレータ:http://www.palmos.com/dev/dl/dl_tools/dl_emulator/
エミュレータでは、ROMイメージが必要です。Skinもインストールすると実物のようにに見えます。
シミュレータ:http://www.palmos.com/dev/dl/dl_tools/dl_simulator/

ソニーのエミュレータ、シミュレータは、こちら。
エミュレータ:http://www.jp.sonystyle.com/Clie-dev/program/develop_tool/palm_os.html
シミュレータ:http://www.jp.sonystyle.com/Clie-dev/develop_tool/simulator.html

どちらも、無料のデベロッパ登録が必要だったはずです。
その他にも、Palm OS搭載のマシンを出している会社から情報がでているはずです。


環境設定

まず、mountから始めます。
prc-toolsは、PalmDev下のsdkを見に行くため、その設定をします。
まず、PalmDevディレクトリを作成します。
その後、Cygwinシェルを開き、下記コマンドを打ち、mountします。
 $ mount -tf "D:\PalmDev" /PalmDev

PalmDev下には、SDKをPalmSource のWEBサイトからダウンロードして格納します。
現在、SDKは、OS5用まで、色々あるので、必要なものを取り込んで下さい。登録が必要です。
Palm OS Garnet SDK (68K) R3 - No installerをダウンロードしました。私は、過去からのつながりもあり、OS3以降のSDKが全てPalmDev下にあります。
ただし、PalmOS5のSDKは、GCC用ではないので、ダウンロードして展開後、PalmOS_5_SDK_68K_R3_no-install\ Palm OS Supportの 下にあったIncsディレクトリをディレクトリごと、/PalmDevの下にsdk-5という ディレクトリを作って格納しました。

 コンパイル時に通常インクルードするSDKを読み込ませるため、
 $ palmdev-prep
を実行。その結果は、以下のようになります。(私の環境の場合)
Checking SDKs in /PalmDev
sdk-1 headers in 'include', no libraries
sdk-2 headers in 'include', no libraries
sdk-3.0 headers in 'include', no libraries
sdk-3.1 headers in 'include', no libraries
sdk-3.5 headers in 'include', libraries in 'lib'
sdk-4 headers in 'include', libraries in 'lib'
sdk-5 headers in 'include', libraries in 'lib'

When GCC is given no -palmos options, SDK '5' will be used by default

Writing SDK details to configuration files...
palmdev-prep: warning: can't open '/PalmDev/sdk-5/include/Core/CoreTraps.h': No error...done

これにより、m68k-palmos-gccは、-palmosNというオプションを認識で きるようになります。新しいSDKをダウンロードした時は、忘れずに。



以上で、一応シェルの起動、コンパイルが行えますが、使いやすくするため、多少手を入れました。この辺りは、ご自分の環境ややりやすい方法があると思いま すので、ご自由に。また、いつでも手を入れられます。

インストールされるシェルは、Bash shellですが、メニューに追加されるCygwin Bash Shellのプロパティをご覧になればわかる通り、cygwin.batというファイルから起動開始になります。

この中身は、以下のようになっています。
@echo off

d:
chdir d:\cygwin\bin

bash --login -i
bashの起動時に各種設定を行わせるため、.bashrcというファイルを読み込ませるため、私は、最後の部分を以下のように変更しました。
bash --rcfile D:\home\ohno\.bashrc -i
これにより、設定ファイルである.bashrcを読み込んで、起動されます。

起動時に読み込まれる.bashrcの中身は、以下のようにしています。
#
# .bashrc
#

# PATHの設定
PATH=/usr/bin:/usr/local/bin:$PATH

echo `bash --version` # 起動時にバージョン表示
export emacs # emacs mode
#export IGNOREEOF=10 # Don't use ^D to exit
#PS1='\h [\w] \$ ' # prompt = HOSTNAME [ Current Dir ] $
PS1='\! \W> ' # prompt = num Current Dir >
HISTFILE=~/.bash_history # コマンド履歴ファイル
HISTFILESIZE=500 # コマンド履歴ファイルのサイズ(起動中)
HISTCONTROL=ignoreboth # 履歴ファイルのサイズが小さくなるおまじない
HISTSIZE=500 # コマンド履歴ファイルのサイズ(終了後)
FIGNORE=.aux:.log:.o:.obj:.AUX:.LOG:.O:.OBJ # ファイル名補完時に無視する拡張子
export MAKE_MODE=UNIX
export LANG=ja_S.JIS

#emacs上で使うための方法 2001/7/31
if [ $TERM == "emacs" ]; then
unset edit
fi

## alias ( = コマンドの別名 ) ファイル
if [ -f ~/.alias ] ; then
source ~/.alias
fi

## end
上記の場合、aliasの設定を別ファイルとしましたので、.aliasファイルも作成する必要があります。
私の場合は、以下の通りです。
#############
### aliases
#############
alias a=alias
a so=source
a ls="ls -CF"
a la="ls -CFa"
a lt="ls -Flt | less"
a ll="ls -Fla"

a hi=history
a cp="cp -i"
a rm="rm -i"
a rmdir="rmdir -i"
a mv="mv -i"
a head='head -30'
a tail="tail -30"
a md=mkdir
a rd=rmdir
a more=less
a which=type
a grep="grep -n"
この辺は、お好みでどうぞ。


Meadowのインストール

新バージョンの2のベータ版も出ていますが、まだベータなので、バージョン1.15を インストールします。これは、前のPCでの環境と同じです。

めどうさん -- Meadow 入門 --のページが参考になると思います。

Meadowのオフィシャルページのhttp://www.meadowy.org/meadow/download.htmlの 下の方にバイナリパッケージがありますので、それをダウンロードします。
Meadow-1.15-i386.tar.gz(バ イナリ)
約14MBあります。
ダウンロードしたファイルを適当な解凍ソフトで解凍します。私は、D:\Meadowに解凍しました。
Meadow
├1.15
├site-lisp
というディレクトリ構造になっているはずなので、\1.15内へ移動し、install.exeを起動します。この時、.emacs(色々な設定情報が 入っているファイル)を読み込むディレクトリを聞かれるので、自分の環境に沿って設定(私は、 D:\home\ohno)して下さい。WindowsのスタートメニューにもMeadowが設定されます。
私の環境では、上記の通り、D:\home\ohnoがホームディレクトリに設定しておりますので、そこに.emacsを格納します。.emacsファイ ルは、インストールしたディレクトリ直下のdot.emacs.jaを.emacsにリネームするか、WEBで解説しているもの、書籍で解説しているもの をご参照下さい。

次に、環境変数を設定します。WindowsXPでは、Windows98以前と異なり、Autoexcec.batがなくなったため、コントロールパネ ル→システム→詳細設定→環境変数のボタンで設定を行います。以下の例のような 設定をユーザーもしくは、システム環境変数のところで設定します。(以下のsetは、以前の名残です。Windows98では、Autoexec.bat に以下のような設定 が必要でした。XPでの設定には、不要です。誤解のないように説明しておくと、=の前後が変数名と変数値になります。)
    set HOME=c:\home\ohno
    set TZ=JST-9
    set TMP=d:\tmp
    set PATH=D:\Meadow\1.15\bin;%PATH%
以上で基本的設定は終了です。
WindowsXPでは、再起動が不要で環境変数の設定が可能になったので、楽になりました。

おまけで、一度Meadowを起動した後、Send toやシェルから起動させた時、既に起動しているMeadowにファイルを開くための処置をします。リソースの削減(?)と複数のウインドウが開かないよ うにするための処置です。
そのためにgnuserveをインストールします。
shimookuさんのサ イトからダウンロードし て下さい。そして、ダウンロードしたページに書かれている手順でインストール、設定して下さい。(手抜きですが、簡単なので省略(^^))
環境変数は、以下のように設定しました。
    set GNUCLIENTW=-F
    set GNUDOITW=-F
    set EMACS=meadow
    set RUNEMACS=meadow
これで、完了です。
Meadowを起動する時には、gnuclientwを使うように設定して終わりです。Send toにも設定しましょう。

Medow上で、bashシェルの起動をさせる設定
;; ;;; shell の設定

;;; Cygwin の bash を使う場合
(setq explicit-shell-file-name "cygwin.bat")
(setq shell-file-name "sh.exe")
(setq shell-command-switch "-c")

最後のおまけ

.emacsに加えた方がよい設定として、MeadowでもCygwinのmount設定されたパスを使えるようにするため、Fake Faceページ(現在リンク切れです)で紹介されているcygwin32-mount.elを 使います。.elは、site-lispに格納し、以下を.emacsに追加します。
(require 'cygwin32-mount)


以上、環境構築について書いてみましたが、もし、これを読みながらやって みてだめだったとか、動かないとかありましたら、ご連絡下さい。一般的に記述しようと自分でやりながら書き留めましたが、環境変数等で必要なものが私の環 境では、既に設定されており、ここに記述していない場合があるかもしれないので。
よろしくお願いします。