NaCl
これはリポジトリもへったくれも無いのだけど、https://developers.google.com/native-client/sdk/downloadまあ、native-clientの公式サイトの手順通りにごにょごにょすれば簡単に準備できる。以下、うちの方法。 % cd ~ % mkdir opt % cd opt % wget http:/…
開発環境のPepper APIのバージョンを差し替えてもnewlibなら.nexeが更新されるだけで.nmfは変更が無い。しかし、glibc版を使っている場合にはrunnable-ld.soがリンクする.soのリビジョンがちまちまと変わる(hoge.so.12345がhoge.so.23456になるとか)のに追従…
NaClのSDK、Pepper_20のアップデートが来ていた。 % ./naclsdk update pepper_20 とかすると導入できる。少々驚いた事に、どうやらこのPepper_20ではMonoをサポートしたらしい。Monoと言ってもEmbedded Monoらしいのだが、C++に加えてMonoで稼動するマネージ…
今回は主にコラムみたいな感じ・w・;そういえば、と思って一般的な不自由なOSであるMicrosoft Windows 8(NT6.2) CP (on VBox)でcmd.exeからchrome.exeをstartしてみたならばやはり標準出力たるコンソールに見えるそれには何も出力が得られなかった。(本題…
先日NaClでstd::coutするとホストしたウェブブラウザーのコンソールに出力が得られる事を確認しました。JavaScriptへメッセージングしてconsole.logへ出す方法も考えて居たのですが、只でさえ負荷を掛けたくないJavaScriptに大量のデバッグログをメッセージ…
std::cout/std::cerrを使えるのはわかったけどログをファイル出力したいなと思って一応試してみた。やはりPepper APIのファイルシステムしか使えないらしくstd::cin同様にコンパイルは通るが実行時に何も処理しないっぽい。 std::ofstream o("nacl-test.log"…
NaClインスタンスをホストしたHTMLの<embed>のパラメーター群をホストされたNaClインスタンスで得られる。設置する人がニーズに併せて設置に応じたコンフィグレーションを適用できるようにする簡単な方法としては良い選択肢の1つですね。 得られるのはNaClをホスト</embed>…
NaClではPepper APIでキーボードやマウスからの入力の面倒を見てくれる。(JavaScriptで受けてメッセージングで飛ばすなんてダサい事は必要ないよ!やったね!!)ポイントは2つ。 pp::Instance::RequestInputEvents/pp::Instance::RequestFilteringInputEv…
NaClの標準出力、標準エラー出力はどこに繋がっているのか試したら手っ取り早く把握できた。 C++ source なんという事は無くどっかにstd::coutとstd::cerrを仕込んで試しただけ。 std::cout << "std::cout" << std::endl; std::cerr << "std::cerr\n"; std::…
先の記事の様にnewlib→glibcにして.nmfから複数ファイルをロードする様になったなら、プログレスイベントの発生がnewlibと単一ファイルだった頃では想定外の状況が発生した。 問題 newlib仕様で単一の.nexeをロードすれば良いだけの場合ならば次の様にロード…
NaClのツールチェインはnewlibとglibcを使える。これまではとりあえずnewlibを使ってた。でも、boost::lexical_castを使おうかと思ったらnewlibではどうもロケール周りの実装でコンパイルエラーがぽぽぽぽーんするのでglibcを使う事に。しかしglibcを使う場…
NaClモジュールに由来してそのembed要素に発生し得るJavaScriptイベント群について全て実装してみた。備忘録として今回もテスト中のLabyrinthian - Wonder Rabbit Projectのリポジトリにtag 0.0.2を打って措いた。 JS-sideのイベントシステムをすべて実装 · …
自分自身が作りたいと思っていたゲームのアイデアを実現したり、技術的なテストをオンラインで行うプラットフォームとすべく、 "Labyrinthian - Wonder Rabbit Project" を実装し始めました。実装というかテストしてるだけな感じですけど。 source NaClモジ…
NaCl pepper_19 SDKのinclude以下はこんな感じ: EGL/ envlock.h langinfo.h reent.h strings.h GLES2/ envz.h libgen.h regdef.h sys/ KHR/ errno.h limits.h regex.h tar.h _ansi.h fastmath.h locale.h rpc/ termios.h _syslist.h fcntl.h machine/ sched.…
今考えている事のメモ。NaCl(食塩)とMeteor(隕石)でマイゲーム基盤を作ろうかと言う事。 ゲームのアイデアではなくて基盤技術の概要に関するメモだけど。 NaCl; Natice Client Native Client — Google Developers 概要 ウェブブラウザーでELFバイナリを安全…
NaClの.nmf(nacl-manifesto-file)についてChromium19から怒られてしまいました。 Application Structure - Native Client — Google Developers あたりを読みながら.nmfはJSON形式で記述すればいいのねーはーいって作ったらパースがJSONよりstrictで怒られた…
一般論としてよく、女子はキラキラしたものが好きだと言われる。たぶん同様に私の場合はマシンネイティブな対象が好きなんだと思う。HTMLとかJavaScriptとか、心の故郷から遠すぎる旅路が長くなると帰りたくなる、C++へ。例えまだ帰り付く街が03だったとして…