2013-07-30 10 views
13

nodejを1つの実行可能なバイナリに静的にコンパイルする方法を知っている人はいますか? 私は共有ライブラリが必要でないことを意味します。nodejsを1つの完全な静的なバイナリファイルにコンパイルする方法

古いバージョンのnodejのガイドがいくつかありますが、最後のバージョンのnodejsは動作しません。

ありがとうございます!

+1

これは役に立ちます:http://architects.dzone.com/articles/compiling-nodejs-projects – furydevoid

+0

ありがとう、furydevoid。私はちょうどノード自体が静的なexeであることを望んでいます。このようにして、私はこの単一のバイナリをアンドロイド環境で実行できます。 – holly

+1

私が望むのは '$ ldd/path/to/bin/node'で、 '動的実行可能ではない ' – holly

答えて

1

あなたは静的にコンパイルNode.jsのバイナリMUSLのlibcのとリンクを取得するためにnodejs静的ドッキングウィンドウの画像を使用することができます。

https://hub.docker.com/r/dundee/nodejs-static/

0

は、一方単一のバイナリを生成することができるように思われるhttp://enclosejs.com/があります。ここで

2

でアプリケーションをパッケージ化することができ、他の一つです本当に静的なビルドをするためには、rubyスクリプトを修正して、libstdC++やglibcなしでバイナリを実行できるようにするフラグ--fully-staticと--without-npmを追加する必要がありますが、説明されているようないくつかの警告がありますnodejs wiki上で。私はすでにここで修正を加えましたが(https://github.com/cmosh/node-packer)、コマンドに--staticというフラグを追加するだけです。すなわち、nodec --static foo.js.また、これを実行するには、rubyとnodejの両方をインストールし、複製されたrepoのbinフォルダ内にnodecスクリプトを実行する必要があります。

関連する問題