Raspberry PiでDr.Geoを動かす

概要

Dr.GeoはWindows, Mac OS X, LinuxのいずれのOSでも動かすことができますが,ARMプロセッサを搭載したRaspberry Pi では公開されているDr.Geoを動かすことができません。 Dr.GeoはPharoをベースに作られていますが,Raspberry Pi(Raspbian)で動作するPharoのVMが公開されています。このVMで現在公開されているDr.Geoのイメージを動かすと起動はしますがNativeBoost関係のエラーが出ます。


2013年頃からDr.GeoはAthen graphic vector canvasを採用していて,raspbian用のPharo VMがNativeBoostに対応していないためと思われます。そこでDr.Geoの古いバージョン(13.10)を試すとRaspbianで起動することができました。(ただし,日本語の表示は今のところできません。)


以下に必要なファイルと変更箇所を記載しますが,これらを設定するshellスクリプトを公開していますので,これをダウンロードしてスクリプトを実行するとDr.Geoが動作します。

具体的にはターミナルで以下を実行します。

wget http://herb.h.kobe-u.ac.jp/raspiinfo/drgeo_install.zip
unzip drgeo_install.zip
cd DrGeo
./install.sh

これでDr.Geoのインストールと設定が完了します。

DrGeo.app/drgeo.sh
でDr.Geoが起動します。

設定内容について

適当なフォルダでDr.GeoおよびPharo VMをダウンロードします。(Dr.Geoの古いバージョンはDr.Geoのサイトでは現在公開されていません。)

wget https://gforge.inria.fr/frs/download.php/file/32942/DrGeo.app-13.10a.zip
unzip DrGeo.app-13.10a.zip
cd DrGeo.app/Contents/Linux
rm *
wget http://files.pharo.org/vm/pharoS/raspbian/latest.zip
unzip latest.zip
mv PharoS pharo

このままでDrGeo.app下のdrgeo.shを実行するとunknown optionエラーになります。 pharo --help でオプションを確認すると,-plugins や -encoding は--plugins , --encoding でないといけないことがわかりますので,nanoなどのエディターで以下のように修正します。

exec "$VM/pharo" \
        --plugins "$VM" \
        --encoding utf-8 \
        -vm-display-X11 \
        "$image"

これでdrgeo.shを実行すると,日本語環境の場合は日本語が表示されずにエラーになります。


配布されているVMのファイル群にはlibFT2Plugin.soがないことからFreeTypeに対応していないのが原因と考えられます。 そのためdrgeo.shに以下を追加して,英語環境で動かします。(setlocaleのエラーは出ます。)(setlocaleのエラーが出る場合は,raspi-configのlocaleの設定でen_GB.UTF-8を追加してください。)

LC_ALL=en_GB.UTF-8

drgeo.shに追加ではなくターミナルから

export LC_ALL=en_GB.UTF-8;drgeo.sh
の実行でも構いません。


2018.5.30 LANGの変更だけではうまくいかない場合があるためdrgeo.shの内容とsetlocaleのエラーの記述を修正
2016.9.25 公開
このページの内容は,JSPS科研費26560089の助成を受けた研究の過程で得られたものです。