Emulating the XO/lang-ja: Difference between revisions
m (→XOと代替環境との比較) |
m (→概要) |
||
Line 59: | Line 59: | ||
== 概要 == |
== 概要 == |
||
OLPCのソフトウェアを走らせる一つの方法はあなたのPCでエミュレータ(と呼ばれる種類のソフト)を使うことです。その他の方法については[[Getting started programming|プログラミングを始めよう]]をご覧下さい。 |
OLPCのソフトウェアを走らせる一つの方法はあなたのPCでエミュレータ(と呼ばれる種類のソフト)を使うことです。その他の方法については[[Getting started programming/lang-ja|プログラミングを始めよう]]をご覧下さい。 |
||
ノート:'''[[:Category:Emulation]]''' and '''[[Emulating the XO/Help and tips|Help and tips]]''' |
ノート:'''[[:Category:Emulation]]''' and '''[[Emulating the XO/Help and tips|Help and tips]]''' |
Revision as of 04:40, 22 August 2007
- This is an on-going translation
{{anchor|Quick Start - [[LiveCd|LiveCD]}}
クイックスタート - LiveCD
多くの人にとっては、LiveCDを使う方法がSugarを試してみるのに最も簡単な方法です。最も簡単なのですが、リブートするとあなたが行った作業が消えてしまいます。
2007年7月の段階では、Live CDは3ヶ月以上も更新されていませんでした。その間ソフトウェアは大幅に進歩してしまったので、果たしてLive CDが更新されるまで役立つものかどうか定かではありません。
クイックスタート - エミュレーション
エミュレーションがSugarを試すもう一つの方法です。セットアップがやっかいですが、しかし作業の内容が維持されます。
- 現在、TamTamのサウンドがうまく機能しないみたいです。MitchellNCharity 13:16, 5 June 2007 (EDT)
クイックスタート(開発者向け)
エミュレーションでの開発はソフトウェア開発のための一つの代替手段です。
ここから最新イメージを入手してください。(add link to tinderbox) XOをエミュレーションで動かす/クイックスタートに書かれているようにQEMUとカーネルアクセラレーションをインストールしてください。/Help_and_tipsの"Development"の項も参照のこと。
505が現在動作確認済みの最新版です。541以降のビルドも動きますが、しかしコラボレーション機能が壊れています(他のラップトップをブラウズすることができません)。
541と505の間の多くのビルド、例えば531, 529, そして525はブートしません。しかしながら50x以降のいくつかは動くみたいです。
概要
OLPCのソフトウェアを走らせる一つの方法はあなたのPCでエミュレータ(と呼ばれる種類のソフト)を使うことです。その他の方法についてはプログラミングを始めようをご覧下さい。
ノート:Category:Emulation and Help and tips
遊ぶだけなら、LiveCdを使うのもいいですし、クイックスタートも参考になります。
開発をするには、LiveCdやQEMU(クイックスタートにありますが、別のイメージを使います)、あるいはLiveDC以外の開発用イメージの一つを使うのも良いでしょう。その他の方法については、 Sugarをインストールするを試してみてください。プログラミングを始めようにそのあたりの比較が書いてあります。
一般的な開発手法はkqemuアクセラレータと共にQEMUを使うことです。基本的な事柄についてはクイックスタートをご覧下さい。
ちなみに私たちが開発をするときは、2,3のユーティリティプログラムと共に異なる.imgを用います。最新安定版が書かれているOS imagesのページをご覧下さい。
qemuの替わりに、VMwareを走らせることもできますし、Macではその他のやり方もあります。
イメージについてのユーザフィードバックにあなたの体験談をお寄せください。そこに一般的な仮想化に関する部屋というのがあります。
XOディスクイメージにおける制限があります。
LATEST-STABLE-BUILD(最新案定版)と最新のビルドとの違いは本物のXOを走らせている人々にとってしばしば話題の中心となります。エミュレーションでは、開発者は普通LATEST-STABLE-BUILDを使います。そして安定化版が古くなると、開発者以外もおそらくそれを使うべきでしょう。
XOと代替環境との比較
OLPCラップトップ(XOのことです)は特殊なハードウェアで、Sugarの走るスリム化されたRed Hat linuxを走らせます。しかしもしあなたがXOを持ってなかったら?その場合は2~3の方法と共に使える、いくつかの方法があります。
おすすめ
プラットフォーム | 目的 | お勧め |
---|---|---|
Windows | 開発 | emulated xo disk image; or emulated Ubuntu with sugar-jhbuild; (or develoepr CD or LiveCD)?. (need your reports) |
Mac | 開発 | emulated xo disk image; or emulated Ubuntu with sugar-jhbuild; (or developer CD or LiveCD)?. (need your reports) |
Mac with Parallels | 開発 | Ubuntu 32-bitをインストールし, そしてUbuntu Linuxの上でSugarを動かす。/Macを参照のこと. |
Ubuntu 32-bit | 開発 | Sugar with sugar-jhbuildとUbuntu Linuxの上でSugar |
32-bit linux | 開発 | Sugar with sugar-jhbuild |
64-bit linux | 開発 | qemu下でxoディスクイメージ; もしくはLiveCd once it gets updated (currently it's April) |
- Windows/Macの開発者の選択肢としてのlive CDというのは私は懐疑的です。実際それが開発に使われいているというのをいまだ聞いたことがありません。それらのCDはすでに数ヶ月も前(4月から)のものです。しかしMcfletchが(5月に)言ってますが、それも一つの選択肢だ、ということなのでとりあえず追加しています。MitchellNCharity 09:19, 23 June 2007 (EDT)
Mcfletch おそらくLive CDはもはや選択肢ではないでしょう。Red Hatはリリースを停止しているようですし。開発者CDですら、すでに古くなりすぎています。
背景
選択肢 | 更新状況 | サウンド機能? | カメラ? | ライブラリ? | Etoys? | 読み/書き? | 開発ソフトウェアの有無? | ネット? | その他 |
---|---|---|---|---|---|---|---|---|---|
Sugarをインストールする | 継続的 | yes | yes? | yes? | yes | yes | your own | yes | いくつかのプラットフォームでは、この選択肢は時間とスペースを食います。(数時間と~3GBくらい), しかし一応"動きます"。その他については、非常にインストールが難しいです。 |
Sugarをインストールする, エミュレータ(qemu, parallels, もしくはvmware)で走っている32-bit Ubuntuの仮想環境上に。 | |||||||||
LiveCd | 4月 | yes(boot) yes?(qemu) | yes?(boot) no(qemu) | no | yes | no | toolchain, Gnome | yes? | クイックスタートのもう一つの方法。 qemuからのブートと利用が両方とも可能です。問題:A |
XOディスクイメージ: | |||||||||
最新安定板 http://olpc.download.redhat.com/olpc/streams/development/LATEST-STABLE-BUILD/ | |||||||||
...development-ext3.img | ~毎月 | yes/B | no | yes | yes | yes | no | after config | Sugarを試してみるためのクイックスタート用 |
...development-devel_ext3.img | ~毎月 | yes/B | no | no | yes | yes | a little | after config | |
最新版 http://olpc.download.redhat.com/olpc/streams/development/LATEST/ | |||||||||
...development-ext3.img | ~毎日 | yes/B | no | yes | yes | yes | no | after config | |
...development-devel_ext3.img | ~毎日 | yes/B | no | no | yes | yes | a little | after config | 新参の開発者向け。(多少コマンドラインでの作業を気にしない人向け). |
その他 | |||||||||
FC6+Sugar | April | yes? | ? | ? | no | yes | Full Fedora Softare Dev. | yes | 6GB (4月のバージョン: etoysが入ってません) |
凡例:
- ライブラリ: サンプルコンテンツのライブラリ(ただし英語版)が含まれている。例えばネットワークにつながってないときにwebブラウザでいることのできるナイスなテキストが含まれているか、とか。
- 読み/書き (書き込み可): .imgを使った場合に、セッションの間あなたが作業状況を保存できるかどうか。.isoイメージを使った場合、毎回スタートするたびに同じ状態から始まります。
- 開発ソフトウェア: 開発ソフトウェアが含まれているかどうか?
- ネット(ネットワーク): ネットワーク機能が"あるべき姿でちゃんと動く"か、それとも"手動で"動かす手続きが必要か?
問題:
- A: fc6 x86_64上のLiveCD(4月版)では、kqemu下でカーネルパニックを起こします。A squashfs problem
- B: Tam Tamが鳴りません。(EToysはノイズは出力するのですが。。。)原因不明
ノート:
- 改めて"sugar-jhbuildはカメラ/マイクをサポートしてるんですか?": "はい、カメラでv412で640x480を使えば。多分それでいけると思います" これについてどなたか確認してもらえませんか? (#olpc, now) MitchellNCharity 00:16, 2 June 2007 (EDT)
Doables:
- 上記LiveCdの"?"を削除する
- Tam Tamのサウンド関係で何がおきているのか究明する。XOディスクイメージを使う分には全てサウンドはOKなんですが。
- マイクのカラムを追加する?サウンド/カメラ/マイクの項目をH/Wの項目としたほうがいいか?
ステップ-バイ-ステップでインストールする
ここには、あなたがXOのエミュレーション環境を動かせるようにするための情報が集められています。あなたはすでにLinuxを走らせ、そしてqemuとkqemuをインストール済みであることを想定しています。
仮想のxo環境ではサウンドとカメラが動きません。一番目の理由は、いったいなぜ動かないのかいまだに誰も解明できてないからです[1]。二番目の理由として、qemuがまだそれらをサポートしていないからです。
http://olpc.download.redhat.com/olpc/streams/development/LATEST/devel_ext3/ に行って、-devel_ext3.img.bz2という番号の付いているイメージとそのmd5を入手してください。ここの例ではビルド485を使っています。
md5sum -c olpc-redhat-stream-development-build-485-20070703_0249-devel_ext3.img.bz2.md5 bzcat olpc-redhat-stream-development-build-485-20070703_0249-devel_ext3.img.bz2 > xo-485a.img
これで1GBほどのファイルができます。
export PORT=2221 qemu-system-x86_64 -soundhw es1370 -serial `tty` -kernel-kqemu -redir tcp:$PORT::22 -hda xo-485a.img
x86_64 cpuを持っていないならば、qemu-system-x86_64の代わりにqemuを使ってください。
スクリーンがすぐに真っ暗になるでしょう。そして青い"GNU GRUB"スクリーンが表示されます。もし暗いままならば、qemuのバグです。qemuをキルして再度立ち上げてください。
ブートメッセージがスクロールして行き、そして最終的にXOの最初のログイン画面が現れるはずです。これはとりあえずそのままにしておきます。
qemuをスタートさせたウィンドウで、ログインプロンプトが表示されているはずです。
- rootになります。
- そして:
/etc/rc5.d/S98NetworkManager stop mv /etc/rc3.d/S98NetworkManager /etc/rc3.d/DISABLED-S98NetworkManager mv /etc/rc5.d/S98NetworkManager /etc/rc5.d/DISABLED-S98NetworkManager echo ifup eth0 >> /etc/rc.local ifup eth0 killall X
Xをキルすることでsugarを再スタートさせます。
大文字小文字を区別せずに名前を入力したいときは、Xがリスタートするのを待たねばなりません。その後以下を実行:
su olpc -c"DISPLAY=:0 xmodmap -e 'keycode 77 = Multi_key'"
これによってNum_lockキーをMulti_keyとして使えるようになります。しかし残念なことに、次回Xをリスタートするとこの設定は失われます。もっといい方法があればよいですが。
この時点で、新しいXOを使いはじめることができるかもしれません。しかしながら、スクリーンの解像度が正しくありません(1024x768)。そこで開発のために、あるいはより実際に近いXOを体感するために、あともう少し作業を続ける必要があります。
いったんsugarのメイン画面にたどり着いたら、Neighborhoodビュー(近所を見渡す)(F1)。もし他の人が見えなければ、現在稼動中のサーバに問題があるか(ひょっとすると小うるさいファイアウォールの内側にあなたはいるのかもしれません)、あるいはあなたの使っているqemuでのネットワーク機能が壊れているかのいずれかです。(qemuの中ではpingが機能しないので注意が必要です)
次のステップは厳密には必須ではありませんが、sshとscpを使えるようになります。これらはあなたのホストOSとXOとの間でファイルなどのいろんなものを送ったり受け取ったりするのに非常に便利です。
XO上で、rootのまま以下を実行します。
1. rootのパスワードを変更
もし"BAD PASSWORD: "とか表示されたり、あなたの入力したパスワードについて何か文句を言われても気にしなくていいです。ちゃんと動きますので。
2. olpcのパスワードを変更します。
これでsshとscpが使えるようになります。
現在のQEMUのバージョンは1200x900をサポートしていません。ですのでXephyrリモートXサーバを使うのです。毎回あなたがxoをブートしたとき、もし解像度が1200x900になっていたら、"(初回のみ)"と記されたステップを除き、これらのステップを再度実行する必要があります。
1. 引き続きxo上でrootのまま以下を実行:
init 3 sleep 5 ifup eth0 su olpc grep export /usr/bin/sugar > ~/env source ~/env
もし"already running"というメッセージが出てifup eth0が失敗することがるかもしれませんが、問題ありません。おそらくすでに上記が実施済みだからでしょう。
2. ホストOSに戻って, Xephyrの準備 (初回のみです)
mcookie > xephyr-cookie export COOKIE=`cat xephyr-cookie` rm -f xephyr-xauth; echo "add :1 . $COOKIE" | xauth -f xephyr-xauth echo $COOKIE
3. XO上で: "su olpc"でolpcユーザにて以下を実施, クッキーを保存します: (初回のみです)
echo "add 10.0.2.2:1 . " PUT-THE-COOKIE-HERE | xauth
4. ホストOSに戻ってXephyrをスタートさせます:
Xephyr :1 -auth xephyr-xauth -reset -screen 1200x900x16 -dpi 200
たびたびXephyrが死んでリスタートが必要になるたびに、おそらくXephyr自身のウィンドウで上記を実行する必要が有るでしょう。
5. xo上で、引き続き"su olpc"にてolpcユーザのまま, sugarをスタート:
DISPLAY=10.0.2.2:1 sugar
実際には、私はホストOSからsshして、そして以下のようにsugarを走らせています:
a. ホストOS上で,
ssh -o NoHostAuthenticationForLocalhost=yes -p 2222 olpc@localhost
b. 表示されたシェルで,
source ~/env export DISPLAY=10.0.2.2:1 sugar
以下も一緒に走らせるといいでしょう
xmodmap -e 'keycode 77 = Multi_key'
これで大文字小文字を無視するモードにNum_lockキーを使って入れます。 しかしこれを最初にやるとXephyrが死んでしまうようです(涙)
これであなたは正しい解像度にてXOの最初のログイン画面を見ることができるはずです。 大文字小文字を無視するためにNum_lockキーを使えます。 おめでとう!でも手順がやっかいでごめんなさい。
複数のXOを走らせるには(例えばコラボレーション機能で遊んだりするのに)、上記のステップを繰り返してください。xo-485b.imgを作成し、そして違うポート番号(例えば2222とか)を使ってください。Xephyrを使っている場合は、2番目のXephyrをスタートさせてください。その場合説明中の...:1(訳注:Xディスプレイの番号)を、10.0.2.2:2(訳注:ディスプレイ番号が2)としてください。
これで自分自身が見えるようになるはずです。そしてWrite(訳注:Sugar上で動くXOのアプリケーションの一つ)でコラボレーションが可能になります。
以下の手続きを実行すると、毎回xoのパスワードを繰り返し入力しなくてよくなります。しかしこれは必須ではありません。また後でもっと簡単にできるようになります。
ホストOSに戻り、
1. まだsshのキーを作成していなければ、キーを作成します。/Help_and_tips#SSH into qemu, using a keyを参照のこと。
2. キーをXOにコピーします。
scp -o NoHostAuthenticationForLocalhost=yes -P $PORT ~/.ssh/id_rsa.pub root@localhost:~/
3.XOで、rootのままで、キーをあちこちに設置しましょう。
mkdir ~root/.ssh mkdir ~olpc/.ssh cat ~root/id_rsa.pub >> ~root/.ssh/authorized_keys cat ~root/id_rsa.pub >> ~olpc/.ssh/authorized_keys
さぁこれでパスワードを再入力することなく、sshとscpが使えるようになりました。
リンク集
- チュートリアル どのように動かせばいいかについてIBMがまとめたもの