りなざう事始


Linux を積んだ PDA である Zaurus SL シリーズは、 モノが Linux なだけにユーザカスタマイズが自由に可能です。 標準では PDA として最適化されていますが、 Linux として使うには幾つかの設定変更を行なうことでより便利に使えます。

ネットワーク接続時のバッチ処理

PDA だけあって、 各種ネットワークカードを用いてネットワークに接続する際は、 hotplug を用いた自動接続になっています。 しかし、 sshd とか ntpdate とか、 接続先に応じて接続時に起動したいものがある場合、 これらを自動起動させるには各種設定ファイルにバッチ処理を記述する必要があります。
  1. 有線 LAN、無線 LAN 無線の場合
  2. 「設定」→「ネットワーク設定」で「有線 LAN」「無線 LAN」として設定されている接続先の場合は、/etc/pcmcia/network.opts に各接続先毎の設定が記述されています。 この中に start_fn() 及び stop_fn() という関数があって、 それぞれ接続時と切断時に実行されるように設計されています。 「ネットワーク設定」で新しく接続先を作成した時点ではこれらの関数の中身は空になっていますので、 このファイルを編集してバッチ処理の script を追加しましょう。

    例:
    start_fn () { return; }
    
    start_fn () {
    	/etc/rc.d/init.d/sshd restart >/dev/null
    	/usr/bin/ntpdate ntp.nc.u-tokyo.ac.jp
    	return
    }
    

  3. ダイアルアップ接続の場合
  4. 「設定」→「ネットワーク設定」で「ダイアルアップ接続」として設定されている接続先の場合は、 PPP 接続を実行する際に使用される script である /etc/ppp/ip-up に追加の記述をします。 接続先毎に異なる記述を行なうことは出来ませんが、 複数のダイアルアップ接続アカウントを持っていることは珍しいし、 しかもそれぞれの接続先毎に自動実行の中身を変えたいというニーズはまずないと思いますので、 これ以上の小細工は必要ないでしょう。

    例:
    if [ -x /usr/bin/ntpdate ]; then
    	/usr/bin/ntpdate ntp.nc.u-tokyo.ac.jp
    fi
    


PPTP 接続

LAN の接続先によっては PPTP による VPN 接続を要求されることがあります。 「設定」→「ネットワーク設定」で普通に接続先を設定するだけではこの PPTP の設定は出来ませんので、 これを実現するためには手動で script を書く必要があります。
  1. Zaurus 用 pptp コマンドを入手して「設定」→「ソフトウェアの追加/削除」でインストールします。

  2. ipkg 入手先: Zaurus Archives
  3. 以下の script を download して所定の directory に置きます。

  4. /etc/ppp/pptp-on
    /etc/ppp/pptp-off
  5. 上で download した script のファイルモードや所有者を書換えます。
  6. chmod 755 /etc/ppp/pptp-on /etc/ppp/pptp-off
    chown root.root /etc/ppp/pptp-on /etc/ppp/pptp-off
    
  7. /etc/pcmcia/network.opts を編集し、PPTP 接続したい接続先の start_fn() 及び stop_fn() の記述を以下のように書換えます。 但し、 青字部分はそれぞれ下記の文字列を表しているので適宜置換えて下さい。

  8. PPTP_SERVER: PPTP サーバの FQDN
    ACCOUNT: PPTP 接続時のアカウント名
    PASSWORD: PPTP 接続時のパスワード文字列
    start_fn () {
    	/etc/ppp/pptp-on PPTP_SERVER ACCOUNT PASSWORD lock noauth
    	return
    }
    stop_fn () {
    	/etc/ppp/pptp-off
    	return
    }
    

DHCP キャッシュの破棄

Linux Zaurus で使われている DHCP クライアントは dhcpcd-1.3.22-pl1 ですが、 このソフトはサスペンド復帰後に効率良くアドレス取得が出来るように DHCP のキャッシュを活用しています。 ところが、 PDA である Zaurus はサスペンドしたまま持ち歩くことが当たり前なので、 サスペンド前とサスペンド後とで対向する DHCP サーバが同じである保証はありません。 このため、 このキャッシュが邪魔をして DHCP サーバから正しくアドレスを貰えないことがままあります。
これを回避するにはキャッシュを破棄してやれば良い訳ですが、 自動的にこれを行なうためにサスペンド前後の状態を Zaurus 側で感知することは不可能です。 なので、 非効率的ではありますが、 ネットワーク接続の度に必ずこのキャッシュを破棄するようにしましょう。
  1. /etc/pcmcia/network (SL-C3000/1000 の場合は /etc/pcmcia/network.functions) を編集して、赤字部分を追加します。
  2. (前略)
    if [ -x /sbin/dhcpcd ] ; then
        rm -f /var/run/dhcpcd-$DEVICE.cache
    
        # This is a version check: I know it looks weird
        if /sbin/dhcpcd -XYZZY 2>&1 | grep -q DHCP ; then
    (後略)
    

ext3 パーティションの作成

市販の SD カードや CF カードは FAT でフォーマットされていることが多く、 Linux Zaurus で使う時にはリンクやファイルモード等 Linux として使うためにはいささか厄介です。 また、 SL-C3000 に標準実装されている HDD も FAT なので、 同じ問題が生じます。 そこで loopback デバイスを用いて FAT 上に ext3 パーティションを作ってしまいましょう。

以降の例では /mnt/card (SD カード) 上に 16MB 分のサイズで FILE という名前のファイルを作成し、 これを /mnt/MOUNT にマウントしています。 これらを変更したい場合は、 例に書かれた青字部分をそれぞれ変更して下さい。

  1. ext3 パーティションに割当てたいサイズ分のファイルを作成します。

  2. 例:
    dd if=/dev/zero of=/mnt/card/FILE bs=1M count=16
    
  3. 作成したファイルを ext3 でフォーマットします。

  4. 例:
    /sbin/mke2fs -j /mnt/card/FILE
    
  5. マウントポイントを作成します。

  6. 例:
    mkdir /mnt/MOUNT
    
  7. /etc/fstab を編集し、作成したマウントポイントを登録します。
    例: (以下の行を追加)
    /mnt/card/FILE	/mnt/MOUNT	ext3	noauto,loop	0  0
    
    (HDD のようなリムーバブルでないメディアにファイルを作成する場合は、 赤字部分の「noauto」の記述は必要ありません。)
  8. /etc/fstab に「noauto」を記述しなかった場合は起動時に自動的にマウントされるので、本体を一旦再起動します。
  9. SD カードの場合は /etc/sdcontrol (SL-C3000/1000 の場合は /etc/sdcard/sd_mem_ctrl) を編集して、赤字部分を追加します。

  10. 例:
    (前略)
        while true
        do
    	umount /mnt/MOUNT
    	umount $MOUNT_POINT
    	if [ $? = 0 ]; then
    (中略)
    	ln -s $MOUNT_POINT $SMB_MOUNT
    	mkdir -p $MOUNT_POINT/$INSTALL_DIR
    	mount /mnt/MOUNT
    	#echo mount $? >> /tmp/sd
    	;;
    'eject')
    	fuser -s -m $DEVICE
    	if [ $? = 1 ]; then
    		umount /mnt/MOUNT
    		umount $MOUNT_POINT
    		rm $SMB_MOUNT
    (中略)
    	kill_task	# for QPE
    	#fuser -k -m $DEVICE > /dev/null
    	umount /mnt/MOUNT
    	if [ $? != 0 ]; then
    		usleep 500000
    		umount /mnt/MOUNT
    	fi
    	umount $MOUNT_POINT
    	if [ $? != 0 ]; then
    (後略)
    
  11. CF カードの場合は /etc/pcmcia/shared を編集して、赤字部分を追加します。
    例:
    (前略)
    	mount $FATOPTS $FS $1 $MOUNTPT || mount $O $FS $1 $MOUNTPT || return 1
    	chkmntsh ${MOUNTPT}
    	mount /mnt/MOUNT
        fi
        return 0
    (中略)
        do_fuser -k -m $1 > /dev/null
        if mount | fgrep -q "$1 on" ; then
    	if mount | fgrep -q "$1 on /usr/mnt.rom/cf" ; then
    	    umount /mnt/MOUNT || return 1
    	fi
    	umount $1 || return 1
        fi
    (中略)
        if [ "$LIST" ] ; then
    	for MT in $LIST ; do
    	    if mount | fgrep -q "$MT on /usr/mnt.rom/cf" ; then
    		umount /mnt/MOUNT
    		if [ $? != 0 ]; then
    		    usleep 1000000
    		    umount /mnt/MOUNT || return 1
    		fi
    	    fi
    	    umount $MT
    	    if [ $? != 0 ]; then
    (後略)
    

IME 学習機能の無効化

Zaurus の IME には学習機能があって、 使用頻度の高い変換が優先的に選択されるようになっていますが、 この頻度判定が実にアバウトで全く実用に堪えられません。 常に直前の変換結果が最優先になり、 尚且つ変換させた文字列全体を記憶してしまうので、 例えば「がくしゅうこうかのむこうか」を「学習効果の無効化」に変換した直後は、 「がくしゅう」を変換しようとしただけで「学習効果の無効化」に変換してしまいます。
Zaurus ユーザの間では、 この機能を無効化するために、 学習結果を記述するファイルに書込み出来なくしてしまう手法が一般的に行なわれています。 勿論、 一切の学習が無効になるので、 良く使う変換結果を優先的に選択するという本来の機能も失われてしまうのですが、 その弊害よりも上記のようなお節介変換の弊害の方が大きいため、 多くの Zaurus ユーザがこの設定を行なっているのが実態だと思います。
但し、 このファイル書込みを禁止してもオンメモリのキャッシュ書込みまでは禁止出来ないので、 ある変換の直後に変換を行なう場合はお節介機能が働いてしまいます。 この場合、 一旦 IME を off にしてから再度 on に戻すことでキャッシュがクリアされますので、 お節介機能に悩まされないように頻繁に IME の on/off を繰返すと幸せになれると思います。

該当ファイルは「/opt/QtPalmtop/dic/kogatagaku.dat」です。 SL-C3000 以降では「/home/zaurus/Settings/kogatagaku.dat」になっているので気をつけて下さい。 このファイルを削除しただけではまた新規に作成されてしまうので、 同じ名前の directory を作成して書込みを禁止してしまいましょう。
尚、 当然のことながらこのファイルは一般ユーザではアクセス出来ませんので、 以下の作業を行なう前に su コマンドを使って root になっておいて下さい。

  1. SL-C860 以前:
    mv /opt/QtPalmtop/dic/kogatagaku.dat /opt/QtPalmtop/dic/kogatagaku.bak
    mkdir /opt/QtPalmtop/dic/kogatagaku.dat
    
  2. SL-C3000 以降:
    mv /home/zaurus/Settings/kogatagaku.dat /home/zaurus/Settings/kogatagaku.bak
    mkdir /home/zaurus/Settings/kogatagaku.dat
    

因みに、 同じことを自動的に行なってくれる ipk 形式のファイルが公開されていますので、 コンソール作業に慣れていない人はこちらを使うのもいいと思います。


USB ドライバの追加

REX-CFU1 のような USB ホストカードを使うと Linux Zaurus でも USB 機器が使えます。 また、 SL-C3000 からは USB 端子が標準実装されましたので、 USB ミニ A プラグ付 USB ケーブルを入手すればそのまま USB 機器に接続出来ます。 但し、 標準で用意されている USB ドライバは必要最低限のものに限られているので、 自分の所有する USB 機器に対応するドライバが実装されていない場合は自分でコンパイルして追加する必要があります。
  1. Linux PC 上に Linux Zaurus 用のクロスコンパイル環境を構築します。

  2. 入手先: SL シリーズ関連 開発ツール一覧
  3. Zaurus カーネルソースを入手し、適当なディレクトリに展開します。

  4. 入手先: SL シリーズ関連 ソースコードダウンロード
  5. linux/arch/arm/def-configs から対応するカーネルコンフィグファイルを linux/.config としてコピーします。
  6. SL-A300discovery
    SL-B500poodle-j
    SL-C700corgi
    SL-C750shepherd-j
    SL-C760husky-j
    SL-C860boxer-j
    SL-6000tosa-j
    SL-C3000spitz-j
    SL-C1000akita-j
    SL-C3100borzoi-j
    SL-C3200terrier-j
  7. linux 直下のディレクトリに移動して「make menuconfig」を実行します。 欲しい USB ドライバの項目に「M」のチェックを付けたら .config を上書き保存して下さい。
  8. 予め、 Zaurus に USB 機器を接続した状態で「設定」→「システム情報」で USB 機器のベンダ ID 及びプロダクト ID を調べておきます。 「デバイス」タブから「USB」をタップすると各 USB 機器名称が現れるので、 下のウィンドウに表示される「ID:」の値を控えておきましょう。
  9. linux/drivers/usb にある各ドライバのソースファイルを編集し、 「struct usb_device_id」という型の構造体配列の中に上で控えたベンダ ID とプロダクト ID の組を追加します。 既に存在するようなら余剰に追加する必要はありません。
  10. make dep && make modules」でチェックを付けたモジュールをコンパイルします。 USB ドライバの場合は linux/drivers/usb の下に「.o」という拡張子で出来ている筈です。
  11. 完成した各ドライバを Zaurus 側の /lib/modules/2.4.18/kernel/drivers/usb にインストールします。 SL-C3000/1000 の場合は「2.4.18」の部分を「2.4.20」に置換えて下さい。
  12. /sbin/depmod -a」を実行してドライバを登録します。
手元にある USB 機器がどのドライバで対応可能なのかは一概に言える話ではありませんので、 色々と調べた上で最適なものを選んで下さい。
例えば LAN アダプタですと、 LUA-KTXrtl8150.o で動きましたが、 GH-USB200 の場合は、 usb-ax8817x-2.4.21.patch を適用した上で ax8817x.o を使う必要がありました。 AX8817x 系チップセットは最新カーネルでは usbnet.o に統合されているのですが、 Linux Zaurus で使われている 2.4.18(2.4.20) では最新カーネル用の usbnet.o は満足に動作しないようですね。

PCMCIA ドライバの追加

Zaurus で対応している CF カードや PCMCIA カードの情報は、 /etc/pcmcia/config というファイルに書かれています。 このファイルに情報のないカードは、 たとえ Zaurus の Linux kernel で制御可能なものであったとしても、 何のカードだか判らないので使えないということになります。 なので、 ここに載っていないというだけの理由で使えないカードは、 カード情報を追加してやれば使えるようになります。
但し、 kernel の機能としてそのカードを制御するドライバが本当に実装されていない場合は、 ここで説明する方法では対応出来ないので、 どこかでまずドライバを探して来て下さい。

/etc/pcmcia/config を覗いてみると、 後半部に「card」で始まるエントリが幾つもあるのが判ると思います。 これをお手本にしてエントリを追加します。 この時、 /etc/pcmcia/config を直接編集してもいいのですが、 このファイルは /etc/pcmcia/*.conf を全て参照するように書かれているので、 既存ファイルと重複しない名前で /etc/pcmcia/new-card.conf のように新しいファイルを作成して、 その中に追加したいカードの情報だけを書くといいでしょう。
一つのエントリの中の各行の意味は以下のとおりです。 以下の説明の中に出て来る「manfid」や「version」の値を調べたい 場合は、 カードを挿した状態でターミナルを開いて、 「/sbin/cardctl ident」と入力して下さい。 cardctl の詳しい使い方はここでは割愛しますが、 Linux 関連の資料を幾つか当たれば解説が見つかると思います。

card
そのカードの名称。 別にどんな名前でも構わないのですが、 敢えてそのカードと関係の無い名前をつけるのも厄介なだけですので、 カードのメーカや型番を記しておきます。 他のエントリと重複しないようにしましょう。
manfid
カードの識別コード。 そのカードを一意に特定する数値で、2 ワードの 16 進数で表されます。 1 ワード目はベンダーコードでメーカ固有の値になります。 catdctl の出力では「manfid」というそのままの名前で表示されます。
version
カードの製品情報。 「manfid」が判らない場合に使う文字列情報です。 複数の引数を「,」で区切って記述し、 一つ一つの引数は「"」で括ります。 「"*"」のようにワイルドカードを使えば、 その順番の引数は何でも構わないという意味になります。 但し、 「manfid」のあるエントリにはこれを記してはいけません。 catdctl の出力では「product info」という名前で表示されます。
bind
カードのデバイス名。 ファイルの前半部にある「device」で始まるエントリでそれぞれのデバイス名が定義されているので、 そのカードと良く似た機能のカードのエントリにあるデバイス名をコピーして来るといいでしょう。

では実際にやってみましょう。 一番一般的でニーズも多いと思われる Ethernet ドライバを例に説明します。 いわゆる LAN カードを Zaurus に対応させるお話です。
PLANEX が販売している CF-100TX2 という LAN カードがあります。 CF カードには珍しい 100BASE-TX 対応の LAN カードですが、 Zaurus が発売された頃には発表されていなかったので、 当然ながらエントリがありません。 ではまずカード情報を見てみましょう。 青字部分が入力文字列です。
bash-2.05$ /sbin/cardctl ident
Socket 0:
  product info: "CF", "100Base-Ethernet", "V", "1.0"
  manfid: 0x021b, 0x0202
  function: 6 (network)
bash-2.05$ 
manfid」があるのでこちらを使ってエントリを作成しましょう。 /etc/pcmcia/cf-100tx2.conf を以下の内容で作ります。 「bind」の値は /etc/pcmcia/config の中から他の LAN カードのものを拾って来ます。 ここは多分「pcnet_cs」辺りで大丈夫でしょう。 ここで当たりをつけたデバイス名が違っていたら、 他の候補を探して何度かトライしてみるといいでしょう。
但し、 これ以降の作業にはルート権限が必要ですので、 su コマンドを使って root になっておいて下さい。
card "Planex CF-100TX2 Fast Ethernet"
  manfid 0x021b, 0x0202
  bind "pcnet_cs"
最後にこの設定を有効にするために、 PCMCIA のモジュールを再起動します。 時間に余裕のある場合は、 Zaurus 自体を再起動しても構いませんが、 /etc/rc.d/init.d/pcmcia が起動スクリプトなので、 これを restart オプション付で起動します。
/etc/rc.d/init.d/pcmcia restart
これでカードを認識するようになれば成功です。 失敗したらエントリの記述を変えて何度かトライしてみましょう。 「manfid」や「version」が合っているかどうかは良く見比べれば判りますが、 「bind」が適切かどうかは勘に頼る部分が大きいので難しいかも知れませんね。 そもそも対応しているドライバが無ければ何の値を記しても無効ですし。 まあその辺はハッカー魂を発揮して下さい。

さて、 ここまでの手順を手動で試してみて上手く動くようになったら、 ここで作成したファイルを ipk 形式にしておくと、 後でメンテナンスが楽になると思います。 「ソフトウェアの追加/削除」でインストールしてやれば、 上記のプロセスを自動で行なってくれますから。

但し、 ここで CF-100TX2 設定ファイルの ipk ファイルを公開することは控えておきます。 というのも、 上記の説明は飽くまでも手順を示すための例示であって、 CF-100TX2 の設定ファイルの配布を目的としたものではないからです。
実のところ、 現在店頭で販売されている CF-100TX2 にはマイナーチェンジが入ってしまい、 「manfid」の値が上記のものとは異なっているそうです。 そういう本体に対し、 上記の説明通りの作業を自力で出来ない人が ipk ファイルだけを使ってしまうと、 混乱に陥らせる以外の結果を生みません。 実際、 以前 ipk ファイルをここに置いておいたところ、 そういう状況のユーザさんから何人か問い合わせが届きましたが、 自分で「manfid」を調べることすら出来ない相手には成す術がありません。
別にこれは意地悪で言っている訳ではなく、 私の持っていない機器に関して私が調べられることは何もないからです。 やり方は上で提示してあります。 でもそれが自分で出来ないなら、 残念ですが諦めるしかないと思います。
という訳で、 ipk ファイルは各自で作成して下さい。 コツとしては、 PCMCIA モジュールの再起動は postinst に記述しておけば便利ってことくらいですかね。

(追記)
...とか書いておいたのに、 日本語がちゃんと読めない人が多いようで ipk ファイルくれくれメールが殺到して大変なことになってしまいました。 仕方ないので、 「manfid」の代わりに「version」で CF-100TX2 を認識させる設定ファイルを作ってみました。
cf-100tx2_1.1_arm.ipk
でも、 この機種は上の cardctl の出力を見ても判るとおり product info フィールドにメーカ名も型番も載せてないんですよね。 この文字列だと機種を特定し切れなくて、 他の機種でもこの記述にマッチしてしまいそうなんですよね。 なので、 この対処法だと他の CF カードが使えなくなるかも知れません。 使う人はその危険性を承知の上で使って下さい。
あと、 Linux 知らない人にりなざうの設定方法を教えるのなんかもうまっぴらなので、 もし CF-100TX2 の ipk に関して一通でも問い合わせが来たら、 今度は絶対に ipk ファイルの公開はやめてしまいますのでそのつもりで。 少なくとも、 「ターミナル」を使って一通りのコマンドライン処理が出来るようになっていないと、 このページに書いてあることは理解すら出来ないと思います。

最後に一言、 PLANEX さんへ。 幾ら「サポート対象外」だからって、 対応 OS に「Linux」と書いた以上は Linux への対応に関して何らかの指針を用意するくらいは企業としての最低限の道義ではありませんかね? 技術力なりマンパワーなりの不足のせいでその最低限のことすら出来ないのであれば、 対応 OS に「Linux」と載せるのは無責任だとは思いませんか?
貴方の会社の売上げを上げるために、 Linux の「L」の字も知らない初心者に vi の使い方から教えないといけなくなった「社外サポート要員」がここに一人いるってことを忘れないで下さい。 りなざう用の ipk ファイルがここにあるからってんでこの機種を買ったりなざうユーザは少なくとも数十人はいる筈です。 「CF-100TX2」で Google ってみるだけでその傍証は得られるかと思いますが、 メーカとしてその辺りの認識はあるんでしょうかね? ぷんすか。


りなざうでプレゼン

Linux とは関係のない話ですが、 最近私はりなざうを使ってセミナーや勉強会のプレゼンを行なっています。 ノート PC を持ち運ばないといけなかった頃と比べて用意するものが少なくて非常に快適です。 そのためのノウハウを幾つかまとめてみましょう。

  1. まずは資料作り
  2. Zaurus のプレゼンソフトで扱えるのは画像ファイル形式のみです。 PowerPoint や OpenOffice Inpress で作成した資料は画像ファイルに落としておきましょう。 要求される画像サイズは 640x480 ですが、 同じ 4:3 の比率でもっと大きなサイズで作成したものを、 画像処理ソフトで縮小した方が、 ドットが粗くならなくて見易いと思います。 PNG とか JPEG とかも扱えるようですが、 私は素直に BMP で作っています。 見た感じ BMP が一番綺麗に映っている様子だったので。
    画像ファイルに落とすには、 HTML にエキスポートして gif か jpeg を吐かせるのが手っ取り早いでしょう。 その後で 640x480 の BMP に変換します。 プレゼン資料は普通一枚や二枚じゃ済まないので、 画像変換を一括で行なってくれるソフトがあると嬉しいでしょう。 Windows だったら IrfanView、 UNIX だったら ImageMagick でしょうか。 変換時のオプションは色々自分で試してみてしっくり来るものを選んで下さい。

  3. グラフィックカードで VGA 出力
  4. Zaurus のプレゼンソフトが対応しているのは、 I・O DATACFXGA か、 colorgraphicVoyager VGA CF になります。 これらのカードは既に生産中止になっていますが、 もし入手出来た場合は標準の「プレゼンテーション」をそのまま使えば VGA 出力出来ます。
    それ以外のデバイスでは、 海連サインは VGA の対応ドライバを開発した人がいるので、 それを使わせて貰いましょう。 因みに青、緑、白、海と四色のレパートリーがありますがどれでも使えます。 これを REX-CFU1 のような USB ホストカードを使うか、 もしくは USB ミニ A プラグ付 USB ケーブルを使って Zaurus に接続します。 あとは シミーさんの夢と小物のエンジニアリングから VGA presentation をダウンロードして来れば、 プレゼン資料を VGA 出力出来ます。 但し、 Zaurus の USB ポートだけでは電源容量が足りないので、 セルフパワーの USB ハブを間に噛ませる必要があります。

  5. デモ環境を用意しよう
  6. 最後はデモ環境です。 コンソールや NetFront の画面をリアルタイムで VGA 出力してやればプレゼン効果も上がると思います。 昔は画面のスナップショットを撮ってプレゼンソフトで表示させていましたが、 Zaurus 画面のミラー化ソフトを開発した人がいるので、 それを使わせて貰いましょう。 さきらさんのありし日の気分(改)から Peinture Miroir 0.2 をダウンロードして来れば、 Zaurus 画面そのまんまのイメージが CFXGAVoyager VGA CF 経由で VGA 出力されます。 但し、 実行前にアイコン長押しで「ルート権限で実行する」にチェックするのを忘れないように。
    このソフトは最新版でサインは VGA にも対応しています。 最新版は .ipk 形式になっていないので、 pmiroir_061110.tar.gz をダウンロードして展開したバイナリを /opt/QtPalmtop/bin/pmiroir に上書きコピーします。 あとは、 上で紹介した VGA presentation がインストールされていれば、 サインは VGA に出力されます。 どちらのデバイスに出力するかは自動的に切替わるので、 VGA presentation がインストールされている状態でも CFXGA を使うことが可能です。


苦情・問い合わせはこちらまで。 shirai@unixusers.net

トップページ