Under-Construction

▲Zaurus Top | ↑Up(設定・システム) | ←Prev(携帯電話でインターネット接続) | →Next(Cross 開発環境の構築)


Opie 環境と OPIE PIM(失敗)

(2003/09/22)

動機と結論

こんなことをしようと思った動機と、結論を先に書いておく

動機
標準の PIM があまりにも使いにくかったので、OPIE の PIM を試して見たかった。
結論
OPIE の PIM にも、現時点では、惹かれるものは少く、労力に見合わないと判断した(単なるユーザのくせに、開発者に申し訳ないが)。
将来、使いやすい PIM が、日本語 Sharp retail ROM 上か、OPIE 環境で出てきた時に、再度考えることにする。

というように、現時点で、PIM の OPIE 化には失敗した(最近失敗多し)わけだが、わかったことをまとめておく。


Opie と Qtopia と Sharp-ROM と OpenZaurus

似たようなものがいっぱいあるので、整理しておく。

かみきさんの所に、とても詳しい情報がある。

Qt/Embedded
X ではない環境で Qt ツールキットを動かすためのライブラリセット。
SL-C760(ROM 1.20JP)に乗っているのは /usr/QtPalmtop.rom/lib/libqte.so.2.3.2 -> /opt/QtPalmtop/lib/libqte.so.2.3.2

Qtopia
Qt/E の上で動く Palmtop 環境全般。タスクバーとかメニューとかランチャとかそういうあたりの面倒を見ていると思われる。アプリケーション一式も含む。
メインのライブラリファイルは libqpe。ややこしい。
SL-C760(ROM 1.20JP)に乗っているのは /usr/QtPalmtop.rom/lib/libqpe.so.1.5.0 -> /opt/QtPalmtop/lib/libqpe.so.1.5.0
「システム情報」によれば Qtopia for OpenPDA バージョン: 1.5.4
2003/08/24 での最新版はコマーシャル版が 1.6 GPL 版は 1.7.0。trolltech から GPL 版のソースコードがダウンロードできる。

OPIE
Qtopia から fork した Open Source な Palmtop 環境全般。機能は類似。
2003/08/24 での最新版は 1.0。本拠地はhttp://opei.handhelds.org/
OPIE は、現在主に Compaq(現 HP になってしまった)のiPAQ と、Sharp Zaurus に対応している。OPIE のダウンロードコーナーを見てみると、さらにいくつも種類があって迷う。

OpenZaurus
これは、海外版 Zaurus SL-5500(5600 もOKか?) のソフトを全部 Open Source でおきかえてやろうというプロジェクト。縦QVGA の画面サイズ決めうちだったらちょっとがっくり。

c700-gcc3
素姓不明。SL-C700 を海外に持ち出して、sharp のgcc ではなく、独自ビルドの gcc3 で OPIE をコンパイルしたものか?
http://opie.handhelds.org/feed/c700-gcc3/1.0/に feed(ネットワーク経由のインストール)できるように ipk が置かれているが、説明が全然みつからん。さらに、ここの ipk は ar 形式なので、日本版の zaurus の GUI の「ソフトウエアの追加と削除」ではインストールできない。

sharprom
http://opie.handhelds.org/feed/sharprom/1.0/に 同じく feed形式で。retail ROM って書いてあるけど、対応機種の型番不明。SL-5500 の OpenZaurus ではない retail ってことだろうか。こっちの ipk は tar 版なので GUI インストール OK。

OPIE 環境のインストール

上のような種類の中から、sharprom バージョンを使うことにする。用意したものと内容物は次の通り。アーカイブからインストールすると、依存関係でひっかかるので、展開して出てきたファイルを直接 Zaurus にコピーすることにする。何をやっているか自分で理解するためと、後で元に戻すため、手動コピーをおすすめする。ipk をばらして手動インストールする方法は、こちら

OPIE for shaprom-1.0 が提供するライブラリと、日本版の SL-C760 の出荷時でのライブラリの違いは次の通り。

SL-C760 Factory ROMOPIE for sharprom-1.0
libqte
opt/QtPalmtop/lib/libqte.so.2.3.2 size=4360844opt/QtPalmtop/lib/libqte.so.2.3.2 size=3644404
libqpe
opt/QtPalmtop/lib/libqpe.so.1.5.0 size=1573568opt/QtPalmtop/lib/libqpe.so.1.5.0 size=1474988
libopie
N/Aopt/QtPalmtop/lib/libopie.so.1.0.0 size=1058912

ここで重要なのが、libqte と libqpe のバージョンが一緒なのに中身が非互換なことだ。バージョンが違えばライブラリは同居できる。ダイナミックリンカが、アプリケーションの要求するバージョンのライブラリを自動的に使ってくれる。しかし、バージョンが一緒だと、ダイナミックリンカが混乱するのでできない。preload を使えば、騙せるかもしれないが、それは試していない。

しかがたがないので、libqte と libqte はインストールしないで、libopei のみ OPIE for shaprom-1.0 から持ってくる。

どこかに libopie.so.1.0.0 を置いておいて、次のようにシンボリックリンクを張る。終ったら、root で ldconfig を実行しておく。

libopie.so.1 -> libopie.so.1.0.0
libopie.so.1.0 -> libopie.so.1.0.0
libopie.so.1.0.0 -> /mnt/card/Documents/work/opt/QtPalmtop/lib/libopie.so.1.0.0

OPIE PIM のテスト結果

todolist(opie-todo_1.0.0-sharprom_arm.ipk)
advancedfm(opie-advancedfm_1.0.0-sharprom_arm.ipk)
addressbook(opie-addressbook_1.0.0-sharprom_arm.ipk)
datebook(opie-datebook_1.0.0-sharprom_arm.ipk)
mail(opie-mail2_1.0.0-sharprom_arm.ipk)

結論


▲Zaurus Top | ↑Up(設定・システム) | ←Prev(携帯電話でインターネット接続) | →Next(Cross 開発環境の構築)


近藤靖浩