さくらインターネットのレンタルサーバ スタンダードプランにNode.jsをインストールするためのメモ。
portsで入れる記事が多かったけれども、root権限なしでNode.js、MongoDBをインストールする方法 を参考に、portsを使わずに入れてみた。
本記事で使用するバージョン
libexecinfoのインストール
下準備として以下のディレクトリを作成。
% mkdir ~/local/
% mkdir ~/local/include
% mkdir ~/local/lib
% mkdir ~/local/src
% mkdir ~/local/src/libexecinfo
libexecinfoをダウンロードして解凍。
% cd ~/local/src/libexecinfo
% wget http://pkg.freebsd.org/freebsd:11:x86:32/latest/All/libexecinfo-1.1_3.txz
% tar xvzf libexecinfo-1.1_3.txz
includeとlibにあるファイルをlocal配下のincludeとlibにコピー。
% cp ./usr/local/include/* ~/local/include/
% cp ./usr/local/lib/* ~/local/lib/
~/.cshrcに以下を追加。
setenv CPATH ~/local/include
変更を反映。
% source ~/.cshrc
Node.jsのインストール
~/.cshrcに以下を追加。
※「(username)」の部分を環境に合わせて書き換える。
setenv PATH ${PATH}:${HOME}/local/bin
setenv NODE_PATH ${HOME}/local/lib/node_modules
setenv NODE_MODULES ${HOME}/local/bin/node_modules
setenv LD_LIBRARY_PATH
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/home/(username)/local/lib
変更を反映。
% source ~/.cshrc
下準備として以下のディレクトリを作成。
% mkdir ~/local/src/node
Node.jsをダウンロードして解凍。
% cd ~/local/src/node/
% tar xvzf node-v0.10.25.tar.gz
% cd node-v0.10.25
./deps/v8/tools/gyp/v8.gypを編集。
676 ['OS=="freebsd"', {
677 'link_settings': {
678 'libraries': [
679 # '-L/usr/local/lib -lexecinfo', ※この行をコメントアウト
680 ]},
./deps/v8/src/platform-freebsd.ccを編集。
※ さくらでnode.js を参考にしたが、どう対処するのが良いかは課題。
298 int OS::StackWalk(Vector<OS::StackFrame> frames) {
299 return 0; // ※この行を追加
300 int frames_size = frames.length();
編集したら以下を実行。終わるまでしばらく待つ。
% ./configure --prefix=~/local
% gmake
% gmake install
変更を反映。
% source ~/.cshrc
インストールされたか確認。
% node -v
v0.10.25
バージョンが正常に表示されればインストールは完了。
課題
-
./deps/v8/src/platform-freebsd.cc の OS::StackWalk についての対処法。
-
Node.jsのv0.12.xへの対応。