おはようございます。奥さんが京都・大阪方面へ出張のため、息子達と実家に転がり込んでいる@kjunichiです。
背景
Node.jsでNodObjCというモジュールがあり、これはCocoa APIがnodeから使えるようになる。
しかし、このNodObjCが内部で使っているnode-ffiというモジュールがネイティブモジュールであり、0.11系のnodeではビルド出来なかった。
インストール
nodebrew use 0.11 git clone https://github.com/avatar5d/node-ffi.git cd node-ffi npm install -g node-gyp npm install nan node-gyp rebuild
サンプルを動かす
npm install cd examples/factorial
OSX
Linux/Unix
gcc -shared -fpic factorial.c -o libfactorial.so
Windows
試していないが、これでDLLを作れる模様。
cl.exe /D_USRDLL /D_WINDLL factorial.c /link /DLL /OUT:libfactorial.dll
動かす
node factorial.js 35
まとめ
NodObjCもこのnode-ffiを使って、0.11系のnodeで動かせたので、最新のnode-webkitやAtom ShellへのNodObjCの組み込みも出来るとおもう。つまり、node-webkitやAtom ShellからNodObjC経由でCocoa APIが使える様になるハズ。
abs.jsを動かしても、無限ループするので、動作確認にはあまりよろしくなかった。
関連記事
- Atom ShellでCocoa APIが叩けるようになった
- node-ffiをGoで入門してElectronを使って応用してみる
- NAPI版のnode-ffi-napiを使ってNode.jsからPythonを動かす