スポンサーサイト
Enyo2でHTMLタグを含む文字列を表示する方法について
Enyo2ではEnyo1にあったDomNodeBuilderのallowHtmlプロパティがなくなったため、(このエントリーを書いている2012.01.29時点では)enyo.Controlのcontentプロパティは常にエスケープされない状態でHTMLへレンダリングされます。
これが永続的な仕様なのか、今後ウィジェット等が実装される中でフレームワーク側で何らかの仕様変更がされるかはわかりませんが、ここではとりあえずの方法として、HTMLタグを含む文字列を表示するときに、アプリ側でどんな対策がとれるか考えてみたいと思います。
tag : enyo
linaro-nanoでCloud9 IDEを使ってみる
- 目標
TouchPadのエミュレータで動かしたときと同じように、Cloud9のサーバー部分をqemu上のlinaro-nanoで動かし、IDEはPC(ホストOS)のブラウザ上で動かすというのを最終目標にします
- node.jsのインストール
Cloud9 IDEを動かしたりモジュールをビルドするためにはnode.jsが必要なので、まずはnode.jsをインストールします。
前回作成したqemu上のlinaro-nano環境にPuTTYなどでログインした後、PC上のUbuntuでクロスコンパイルしたときのように「Ubuntu 11.04 Natty Narwhal に Node と npm をインストール - 自分の感受性くらい」を参考にnvmとnode.jsのインストール作業を行います(この先、とくに記述がなければログインしたPuTTY上でコマンドを実行しています。また、今回はrootで全ての作業を行っています)。
なお、手順自体にUbuntuのときととくに違いはないのですが、node.jsのインストール(ビルド)に結構時間がかかります。Core i5 2400のPCで大体1時間くらいかかりました。
- Cloud9 IDEのインストール
通常のインストール手順ではエラーになるので、以下のように手動でリポジトリを作業ディレクトリなどに複製します。
git clone git://github.com/ajaxorg/cloud9.git cd cloud9 git submodule update --init --recursive
※これもsubmodule updateの完了までにそこそこ時間がかかります。ネットーワーク環境にもよると思いますが大体10分くらい。
また、このままでは、Cloud9 IDEのREADMEの「Startup errors: Binaries and node.js」にあるように、ARM環境では動かないので、次の項目からの手順でモジュール(o3.node)をARM用にビルドします。
- libxml2-devのインストール
o3.nodeのビルドにはやはりlibxml2が必要なのですが、今回はクロスコンパイルのときのようにライブラリのビルドを行わなくても、aptでパッケージからインストールすることもできます。
apt-get install libxml2-dev
を実行すれば準備は完了です。
- o3.nodeのビルド
こちらはクロスコンパイルのときのように
git clone http://github.com/ajaxorg/o3
でリポジトリを複製します。
また、クロスコンパイルのときと同じようにCCFLAGSなどでエラーになるので、o3ディレクトリに移動しにwscriptの該当部分を以下のように編集します。
conf.env.append_value('CCFLAGS', ['-O3', '-ffast-math']) conf.env.append_value('CXXFLAGS', ['-O3', '-ffast-math'])あとは、「./tools/node_modules_build」を実行すると、「build/default」内にo3.nodeが作成されるので、Cloud9 IDEのREADMEの「Startup errors: Binaries and node.js」で指定されているディレクトリ(support/jsdav/support/node-o3-xml-v4/lib/o3-xml)にコピーします。
※これもビルドが完了するまでにそこそこ時間がかかります。Core i5 2400のPCで大体15分くらいかかりました。
- linaro-nano上でサーバー部分を起動する
o3.nodeのビルドが完了してCloud9 IDEを起動する準備ができたので、実際にlinaro-nano上で起動してみます。
まずはlinaro-nano上でPC(ホストOS)側に向いてるインターフェースのIPアドレスが必要なので、ifconfigなどでeth0のIPアドレスを確認しておきます(デフォルトならおそらく10.0.2.15)。
アドレスが確認できたら、Cloud9 IDEディレクトリのbinディレクトリに移動し、
node cloud9.js -l 10.0.2.15
のように手動で起動すると以下のような画面が表示されます。
- PC(ホストOS)から接続できるようにする
PC側からエミュレータの特定ポートに接続するには、qemuの起動オプションを変更する必要があります。一旦エミュレータをシャットダウンした後に
qemu-system-arm -M vexpress-a9 -cpu cortex-a9 -kernel vmlinuz-3.1.0-1800-linaro-lt-vexpress-a9 -initrd initrd.img-3.1.0-1800-linaro-lt-vexpress-a9 -m 512 -append "root=/dev/mmcblk0p2 vga=normal mem=512M devtmpfs.mount=0 rw" -drive file=vexpress-nano.img,if=sd,cache=writeback -redir tcp:6622::22 -redir tcp:3001::3000
のようにポートフォワーディングの設定を追加して、エミュレータを再起動します(前回実行したコマンドと比べて、末尾に「 -redir tcp:3001::3000」を追加してあります)。
※PC(ホストOS)のファイアーウォールなどで外部からqemu-system-armへの接続に制限がかかっていない状態では、上記のようにエミュレータを起動すると他のPCからもエミュレータ上のCloud9に無制限に接続できるようになるので注意してください。
- IDEが起動できることを確認する
エミュレータの起動が完了したら、再度Cloud9 IDEのサーバー部分を開始し、PC側のブラウザで「http://localhost:3001」を開くと、以下のようにIDEの画面が表示されます。
だいたいこんな感じでlinaro-nano上でCloud9 IDEを動かすことができました。
モジュールのビルドにちょっと時間がかかるのが難点なのと、共有ライブラリのバージョンなどに注意する必要はありそうですが、外部コマンドや*.nodeを含むようなモジュールをデバイス用にちょっとビルドしたいとか、TouchPadエミュレータ上のCloud9 IDEで作業していたワークスペースを持ってきてARM上で動くか検証したい、といった場合に使えるのでないかなと。
Windows上のqemuでlinaro-nanoを動かしてみる
※linaroについては「Open source software for ARM SoCs」「Linaro とは - Linuxキーワード:ITpro」などを参照してみてください。
- 目標
ここではWindows上でqemuを使ってlinaro-nano(vexpress-a9用イメージ)を動かすことを当面の目標とします(linaro-nano上でCloud9 IDEを動かす方法などについては、次のエントリーにメモしてあります)。
※ちなみにUbuntu上でlinaro-nanoを動かす方法は「Platform/DevPlatform/Ubuntu/ImageInstallation - Linaro Wiki」から辿って「Resources/HowTo/Qemu - Linaro Wiki」や「Virtual ARM Linux environment - MDN」などに記載されてます(linaro-nanoのバージョンによってちょっと内容が異なるようですが)。こちらでは最初から作成するイメージファイルのサイズを指定できるので、Ubuntuではイメージファイルを直接ダウンロードするよりもこちらの方法の方が楽だと思います。
- 前準備
ARMのエミュレータとしてqemuを使います。今回は「Qemu On Windows」からv0.15.1のバイナリをダウンロードし、アーカイブを展開後にPATHを通しておきます。
次にlinaro-nanoのimgファイルの操作が必要になってくるので、7zipとExt2Read(Ext2explore)もダウンロードしてインストールしておきます。
最後に、img内のパーティションを操作する必要もあるので、Gpartedのisoイメージもダウンロードしておきます(isoイメージはダウンロードするだけで、CDに焼いたりするなどの必要はありません)。
- linaro-nanoのイメージファイルのダウンロード
linaroのイメージは「Linaro Releases」からダウンロードできます。どのイメージを選択するかは用途や利用するエミュレータなど変わってくるかと思いますが、今回は「http://releases.linaro.org/images/11.10/oneiric/nano/」から「vexpress-nano.img.gz」をダウンロードします
※これを書いてる時点で既に11.12が出ているようです。11.11はちょっと試したところ起動するのは確認できたので、11.12でも同じようにできるのかなと思います。なお、vexpress以外のマシンタイプ用のイメージなどもありますが、今回は利用するqemuの関係からvexpress用を選択しておくのが無難です(beagleなどは試してみた限りでは起動できなきなかったです)
- カーネルなどの取り出し
qemuでカーネルのコマンドラインオプションを指定するので、以下のようにカーネルなどをimgファイルから取り出しておく必要があります。
まず7zipで「vexpress-nano.img.gz」から「vexpress-nano.img」を取り出します。
次に、取り出した「vexpress-nano.img」を再度7zipで開き、「1.img」を作業用のフォルダに取り出します。
最後に、取り出した「1.img」を「Ext2explore」で開き、bootの下にあるvmlinuz*とinitrd*の2ファイルをSaveしておきます。
- イメージファイル内のパーティションの拡張
ダウロードしたimgファイルの容量だと、Cloud9 IDEを動かすには空き少ないのでこれを拡張します。
まずPCのコマンドプロンプトから
のようにimgファイル自体を拡張します。qemu-img resize vexpress-nano.img +1G
この後にimgファイル内のパーティションを拡張するために、コマンドプロンプトから
を実行しますqemu -L qemuのBIOSのフォルダ -boot d -cdrom ダウンロードしておいたGpartedのisoファイル -hda vexpress-nano.img
(qemuのBIOSのフォルダは、qemuを展開したフォルダ内にBIOSというフォルダがあります)メニュー項目をデフォルトで選択していくとGpartedの環境が起動します(途中で、1分くらい黒い画面のまま止まっているように見えることもあります)
パーティションのサイズを拡張します。
- イメージファイルの起動
カーネルの取り出しやパーティションの拡張ができたら、「Virtual ARM Linux environment - MDN」などの内容をもとにqemuの起動オプションを決めてイメージファイルを動かしてみます。
qemu-system-arm -M vexpress-a9 -cpu cortex-a9 -kernel vmlinuz-3.1.0-1800-linaro-lt-vexpress-a9 -initrd initrd.img-3.1.0-1800-linaro-lt-vexpress-a9 -m 512 -append "root=/dev/mmcblk0p2 vga=normal mem=512M devtmpfs.mount=0 rw" -drive file=vexpress-nano.img,if=sd,cache=writeback
これを実行すると新しいウィンドウが開き、しばらく待つとコンソールで操作ができるようになります。
※qemu-system-armのエラーメッセージなどは、qemu-system-armが保存されているフォルダにstderr.txtなどのテキストファイルとして作成されます。コマンドを実行しても何も反応がない場合は、stdout.txtやstderr.txtが作成されてないか確認してください。
- linaro-nanoのネットワーク環境設定
ダウンロードしたイメージファイルのバージョンなどで状況が違うようですが、デフォルトではPC(ホストOS)側と接続するネットワーク環境が設定されていないことがあります。コンソール(エミュレータのウィンドウ)からifconfigでeth0が確認できない場合は以下の手順を実行します(すでにeth0にアドレスが振られているならこの手順は飛ばすことができます)
まずは、コンソールで「ifconfig eth0 up」「dhclient eth0」を実行します。
これでeth0にアドレスが振られて外部と繋がるようになるはずなので、続いて「apt-get update」「apt-get install vim」などでコンソール上で使えるエディタを導入します。
最後に導入したエディタなどで「/etc/network/interfaces」に
の2行を追加しておきます。auto eth0 iface eth0 inet dhcp
- PC(ホストOS)とsshで接続できるようにする
この後もコンソール上で作業してもよいのですが、PCとのファイルのやりとりやPuTTYなどで作業できるように、OpenSSHを導入することにします。
まずは、コンソールから「passwd」でrootのパスワードを設定しておきます。
次に「apt-get update」「apt-get install openssh-server」を実行してOpenSSHを導入します。
これでlinaro-nano内でOpenSSHのサーバーは動きましたが、このままだとPC(ホストOS)側からエミュレータに接続できないので、一旦エミュレータをshutdownします(コンソールからshutdown -h nowなどを実行すれば自動的にウィンドウが閉じてqemu-system-armも停止します)。
その後、
のようにポートフォワーディングの設定を追加して再度起動します(先ほど実行したコマンドと比べて、末尾に「 -redir tcp:6622::22」を追加してあります)。qemu-system-arm -M vexpress-a9 -cpu cortex-a9 -kernel vmlinuz-3.1.0-1800-linaro-lt-vexpress-a9 -initrd initrd.img-3.1.0-1800-linaro-lt-vexpress-a9 -m 512 -append "root=/dev/mmcblk0p2 vga=normal mem=512M devtmpfs.mount=0 rw" -drive file=vexpress-nano.img,if=sd,cache=writeback -redir tcp:6622::22
これでPuTTYなどからlocalhostの6622ポートを指定すると、エミュレータに接続できるようになります。
※PC(ホストOS)のファイアーウォールなどで外部からqemu-system-armへの接続に制限がかかっていない状態では、上記のようにエミュレータを起動すると他のPCからも接続できるようになるので注意してください。
node.jsのモジュールをPC(x86)上でARM用にビルドする
※詳しくはCloud9 IDEのREADMEの「Startup errors: Binaries and node.js」を参照してみてください。 これについては、該当する部分のリポジトリをForkしてARM用にビルドいる人がいるので、そちらを利用させていただくという手もありますが、ARM用にビルドしたいモジュールやツールなどが他にも出てくる場合のことも想定して、Ubuntu上にクロスコンパイルの環境を作って試しにo3.nodeをビルドしてみたいと思います。
- 目標
今回はo3.nodeをARM用にビルドできたら完了とします。いちおう稼動確認もしていますが、今回はARM環境にnode.jsやCloud9 IDE本体をインストールする方法についてはとくには触れません(その辺については次のエントリーとその次のエントリーでメモしてあります)。
- Ubuntuのインストール
node.jsのモジュールをビルドする場合、Linux環境の方がやりやすそうなので、VirtualBoxにUuntu11.10の日本語Remixをインストールします(この先、とくに記述がなければインストールしたUbuntu上で作業します)。
- ARM用のコンパイル環境のインストール
最初はwebOSのPDKに入ってるコンパイラなどを利用しようかとも思ったのですが、実際にやってみるといろいろ不都合があったので、PDKが利用している「Sourcery CodeBench Lite Edition - Mentor Graphics」から「Sourcery CodeBench Lite Edition for ARM GNU/Linux」の最新版を使うことにします。
上記のアドレスから「IA32 GNU/Linux TAR」版をダウンロードし、/optなどに展開してPATHを通しておきます。
- node.jsのインストール
node.jsのモジュールをビルドするには、node.jsに含まれるnode-wafコマンドを利用するので、あわせてUbuntu上にもnode.jsをインストールする必要があります。
なお、node.jsは普通にソフトウェアセンターなどからインストールしてもいいのですが、node.jsのいくつかのバージョンを切り替えて試してみたいので、nvmをインストールしてからnode.jsのv0.4.12(TouchPadと同じバージョン)をインストールするようにします。
(Ubuntuにnvmをインストールする方法は「Ubuntu 11.04 Natty Narwhal に Node と npm をインストール - 自分の感受性くらい」が参考になると思います)※Ubuntu11.10でnode.jsのv0.4.7などをインストール(ビルド)しようとすると「#676: Build fails on debian - Issues - joyent/node - GitHub」に引っかかったりしたので、インストールするのはv0.4.12辺り以降が無難でないかと思います。
- libxml2のビルド
o3.nodeをビルドするためにはlibxml2が必要となります。
「The XML C parser and toolkit of Gnome」の「Downloads」からソースをダウンロードして展開した後に、展開したディレクトリで「./configure --host=arm-none-linux-gnueabi --prefix=$HOME/local/arm/」「make」「make install」を順番に実行します。
エラーがなければ、ホームディレクトのlocal/arm/libなどにファイルが展開されています。
- o3.nodeのビルド
まずはCloud9 IDEのREADMEの「Startup errors: Binaries and node.js」にあるように「git clone http://github.com/ajaxorg/o3」でo3のリポジトリを複製しておきます。
次にARM用にビルドするように環境変数を書き換えます。今回は「cross compiling node.js for arm」を参考に以下のように変更して端末にペースト&実行しました。
export CSTOOLS=/opt/arm-2011.03 export CSTOOLS_INC=${CSTOOLS}/arm-none-linux-gnueabi/libc/usr/include export CSTOOLS_LIB=${CSTOOLS}/arm-none-linux-gnueabi/libc/usr/lib export TARGET_ARCH="-march=armv7-a" # must be at least armv5te export TARGET_TUNE="-mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -mthumb-interwork -mno-thumb" # optional export CPP="arm-none-linux-gnueabi-gcc -E" export STRIP="arm-none-linux-gnueabi-strip" export OBJCOPY="arm-none-linux-gnueabi-objcopy" export AR="arm-none-linux-gnueabi-ar" export F77="arm-none-linux-gnueabi-g77 ${TARGET_ARCH} ${TARGET_TUNE}" unset LIBC export RANLIB="arm-none-linux-gnueabi-ranlib" export LD="arm-none-linux-gnueabi-ld" export LDFLAGS="-L${CSTOOLS_LIB} -Wl,-rpath-link,${CSTOOLS_LIB} -Wl,-O1 -Wl,--hash-style=gnu,-L${HOME}/local/arm/lib -Wl" export MAKE="make" export CXXFLAGS="-isystem${CSTOOLS_INC} -fexpensive-optimizations -frename-registers -fomit-frame-pointer -O2 -ggdb3 -fpermissive -fvisibility-inlines-hidden" export LANG="en_US.UTF-8" export CCLD="arm-none-linux-gnueabi-gcc ${TARGET_ARCH} ${TARGET_TUNE}" export PATH="${CSTOOLS}/bin:${PATH}" export CFLAGS="-isystem${CSTOOLS_INC} -fexpensive-optimizations -frename-registers -fomit-frame-pointer -O2 -ggdb3" export OBJDUMP="arm-none-linux-gnueabi-objdump" export CPPFLAGS="-isystem${CSTOOLS_INC}" export CC="arm-none-linux-gnueabi-gcc ${TARGET_ARCH} ${TARGET_TUNE}" export TITOOLSDIR="/mnt/data/overo-oe/ti" export TERM="screen" export SHELL="/bin/bash" export CXX="arm-none-linux-gnueabi-g++ ${TARGET_ARCH} ${TARGET_TUNE}" export NM="arm-none-linux-gnueabi-nm" export AS="arm-none-linux-gnueabi-as"また、このままだとwscript内で追加されるCCFLAGSなどでエラーになるので、o3ディレクトリに移動しにwscriptの該当部分を以下のように編集します。
conf.env.append_value('CCFLAGS', ['-O3', '-ffast-math']) conf.env.append_value('CXXFLAGS', ['-O3', '-ffast-math'])これで「./tools/node_modules_build」スクリプトを実行すれば「./build/default」内にo3.nodeが作成されます。
※環境変数の指定がうまくいってなくても、意外とX86用にビルドできてしまうこともあったので、o3.nodeが作成されたらfileコマンドなどでARM用になっているか確認しておいた方が良いかと思います。
- 実際に動かしてみる
今回はあまり詳しくは触れませんが、ARM環境上でCloud9 IDEのリポジトリを複製した後にo3.nodeを指定のディレクトリにコピーし、Cloud9 IDEのディレクトリで「node bin/cloud9.js」と手動で実行すれば、ARM環境上でもCloud9 IDEを動かすことができます
以下、qemu上のlinaro-nano-vexpress-a9で動かしてみた図
※Cloud9 IDEを動かす環境上にlibxml2がインストールされていなければ、libxml2関連のファイルもコピーする必要もあります(linaro-nanoではデフォルトではlibxml2が入ってないので、コピーするかsudo apt-get install libxml2が必要です)。
※Cloud9のo3.nodeをロードする部分は、ライブラリが足りてないなどのエラーがあってもそのメッセージを出さずにlinux64用のモジュールをロードしようとしようとして停止するので(大体は「Error: ~/cloud9/support/jsdav/support/node-o3-xml-v4/lib/o3-xml/o3-linux64.node: wrong ELF class: ELFCLASS64」が表示される)、実際のエラーを確認しにくくなっています。ARM環境上でcloud9.jsを実行した後に「wrong ELF class: ELFCLASS64」で停止してしまう場合は、「support/jsdav/support/node-o3-xml-v4/lib/o3-xml/o3.js」の中身をだけにしてしまえばエラーが確認しやすくなります。module.exports = require('./o3.node').root
だいたいこんな感じで、ARM上で動くo3.nodeをビルドすることができました。
ただ、ちょっと気になるのはo3.nodeをビルドするときのスクリプト内部で、node.jsのスクリプトからヘッダファイルを作成していることです。これが何をやっているのかはよくはわかりませんが、このスクリプトは本来の環境(ARM上)で動かしたほうがいいのかなという気がしないでもないです(linaro-nanoのvexpress用とUbuntu11.10の32/64bitそれぞれで試してみましたが、同じファイルが作成されたので気にしすぎかもしれませんが)。
また、出来上がったo3.nodeがARM環境上で動かせるか確認したいとか、Windows上で作業したいとかいうこともあるのかなということで、次のエントリーからはWindows上のqemuでlinaro-nanoを動かせる環境を構築して、さらにその上でモジュールのビルドやCloud9 IDEを使う方法などについてメモしてみたいと思います。
TouchPadエミュレータでCloud9 IDEを使ってみる
- 目標
Cloud9 IDEを特定の環境上で動かすという場合、おおざっぱにわけてCloud9のサーバー部分を動かすのと、IDE部分を動かすという内容に分かれると思いますが、このメモではサーバー部分をTouchPadのエミュレータ上で動かして、IDEはPC(ホストOS)のブラウザ上で動かすというのを最終目標にします。
- 準備
- gitを使う必要があるので、PCにgitをインストールしておきます。
- TouchPadのエミュレータでは共有ライブラリがおかしいようなので、「emulator's glibc version problem」のアップデータを適用しておきます。 ※これはエミュレータ用で、デバイスに適用するとおかしなことになると思うので、注意してください。
- Cloud9 IDEは全体のファイルサイズが結構大きいので、TouhcPadエミュレータの空き容量をできるだけ増やしておきます。
- また必須ではないのですが、TouchPadのエミュレータは空き容量が足りなってしまった後は、かなり不安定になるのでスナップショットを作成して、いつでも元に戻せるようにしておきます。
- Cloud9のダウンロード(リポジトリの複製)
Cloud9 IDEのREADMEにあるインストール方法そのままは使えないので、手動でリポジトリを複製するために、まずはPC上で以下のコマンドを実行します
git clone git://github.com/ajaxorg/cloud9.git cd cloud9 git submodule update --init --recursive
これでCloud9 IDEのダウンロードが完了したのですが、そのままコピーするとエミュレータの空き容量が足りなくなるので、TouchPadで動かすのに必要のない以下のファイルを削除します。
- support/node-builds-v4フォルダ
- 各フォルダ内の.gitフォルダ
これで大体110Mくらいになります。
- インストール(コピー)
ダウンロードしておいたcloud9フォルダを、WinSCPなどでTouchPadのエミュレータにコピーします。
コピー先のフォルダはどこでもいいのですが、今回はとりあえず/media/internal/.cloud9にしておきました(/media/internalの下にそのままコピーすると画像ファイルなどがwbOSのIndexerに検出されてDBの容量を消費するので注意が必要です)。
※コピーするファイルの容量に対して10Mくらい余裕がある状態でも、容量不足の警告が表示されることがありますので、余裕を持って空き容量を確保しておく必要があります。
※警告が表示された後、ファイルを削除して空き容量を確保しても警告が止まらない場合があります。このような場合は、あきらめてスナップショットの復元をした方が早いです。- TouchPad上でサーバー部分を起動する
TouchPadエミュレータ上でPC(ホストOS)側に向いているインターフェースのIPアドレスが必要なので、PuTTYなどでエミュレータにログインしifconfigなどで、eth0のIPアドレスを確認しておきます(デフォルトならおそらく10.0.2.15)。
アドレスが確認できたら
node /media/internal/.cloud9/bin/cloud9.js -l 10.0.2.15
のように手動で起動すると以下のような画面が表示されます。
- PC(ホストOS)から接続できるようにする
PC側からエミュレータの特定ポートに接続するには、VirtualBoxの設定を変更する必要があります。VirtualBoxのマネージャーを開き、TouchPadエミュレータの仮想マシンのネットワーク設定にポートフォワーディングルールを追加します。
※PC(ホストOS)のファイアーウォールなどで外部からVirtualBoxへの接続に制限がかかっていない状態では、上記の設定を行うことで他のPCからもTouchPadエミュレータ上のCloud9に無制限で接続できるようになるので注意してください。
- IDEが起動できることを確認する
PC側のブラウザでhttp://localhost:3000を開くと、以下のようにIDEの画面が表示されます。
だいたいこんな感じで、あとはワークスペースの指定など起動オプションを調整したりすれば、とりあえずはPCのブラウザ上からTouchPadエミュレータ上のファイルの編集や実行、デバッグなどが出来るようなります(自分が使う範囲での確認しかしてなので、本来必要な機能が全て動いているかはわかりませんが…)。
*1
今回のメモは、外部から接続されない状態のTouchPadエミュレータ(x86)上でCloud9 IDEのサーバー部分を動かし、ホストOSであるPC側から接続する場合の手順です。この手順のままではTouchPadのデバイス(ARM)には転用できないので(あと変にファイアーウォールのサービスAPIで穴をあけるのも危なそうなので)注意してください。
なお、TouchPadのデバイス向け専用の内容ではないですが、ARM上での検証をしてみたかったので、Cloud9 IDEが利用しているモジュール(o3.node)をARM用にクロスコンパイルする方法や、Windows上でlinaro-nanoを動かしその上でCloud9 IDEを動かす方法なども次のエントリーからメモしていくので、興味のある方はそちら(「node.jsのモジュールをPC(x86)上でARM用にビルドする」「Windows上のqemuでlinaro-nanoを動かしてみる」「linaro-nanoでCloud9 IDEを使ってみる」)も参照してみてください。
もじもか for HP webOS コンセプトバージョンをv.0.2.7へ更新しました
- バグの修正
- 制限事項の追記(QuickOfficeのDocument画面上での入力はできないこと等)。
- TouchPadのウェブブラウザ対応
詳しくは以下のリンクからどうぞ
□ もじもか for HP webOS コンセプトバージョンのドキュメント ― MojiMoca v0.2.7 documentation
tag : HPwebOS
もじもか for HP webOS コンセプトバージョンをv.0.2.6へ更新しました
□ もじもか for HP webOS コンセプトバージョンのドキュメント ― MojiMoca v0.2.6 documentation
なお、今回はTouchPad用のファイルのみの更新なので、TouchPad以外の機種で利用されている場合には、v0.2.6に入れ替える必要はありません。
(TouchPad実機対応検証版を入れている場合も、そのままで大丈夫です)
もじもか for HP webOS コンセプトバージョンをv.0.2.5へ更新しました

なお、既に以前のもじもかをwebOS3.0.4へインストールされて以下のように文字化けしている場合は、上書きインストールではタイトルは更新されないようなので、一旦もじもかをアンインストールした後にv0.2.5をインストールしてください(それでもダメなときは、アンインストール→リセット→v0.2.5インストールを試してみてください)

あとは、今回新しくenyo用のオプションファイルが追加されたことで、インストール手順が増えてしまいましたが、大きな流れとしては「従来通りにアプリモードとExtentionモードをセットアップする」→「追加でもじもかEOをインストール」→「もじもかEOのExtentionモードをONにする」といった感じになっています。
(*) TouchaPad対応の処理はwebOS3.0.4上でのみ稼動します。webOS3.0.2ではダッシュボードによるモード表示など、一部機能が動作しませんので注意してください。
□ もじもか for HP webOS コンセプトバージョンのドキュメント ― MojiMoca v0.2.5 documentation
















