さくらインターネットのレンタルサーバーにnode.jsを入れる


基本的には参考にしたさくらのレンタルサーバ(スタンダード)でNode.jsをインストールするの通りにやっていけばOK...のはずだったけど、うまう行かないもんだね

私自身、Linuxにそんなに精通しているわけではないので、ちょっとしたところで詰まったりしたので、その辺を書いておこうと思います。

途中に出てくる

% portsnap -f ~/ports/portsnap.conf fetch extract update

% portsnap -f ~/local/work/ports/portsnap.conf fetch extract update

じゃないとダメだったはず。

とりあえず、make installすると

gmake[1]: *** Waiting for unfinished jobs....
gmake[1]: Leaving directory `/home/(username)/local/ports/tmp/work/home/(username)/local/work/ports/www/node/work/node-v0.12.0/out'
gmake: *** [node] Error 2
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** [do-build] Error code 1

とりあえず、こうしてみる

% setenv MAKE_JOBS_UNSAFE yes 
% make clean
% make install

・・・

  g++ '-DV8_TARGET_ARCH_X64' '-DENABLE_DISASSEMBLER' '-DENABLE_HANDLE_ZAPPING' -I../deps/v8  -pthread -Wall -Wextra -Wno-unused-parameter -m64 -fno-strict-aliasing -I/usr/local/include -O3 -ffunction-sections -fdata-sections -fno-tree-vrp -fno-tree-sink -fno-omit-frame-pointer -fdata-sections -ffunction-sections -O3 -fno-rtti -fno-exceptions -MMD -MF /home/(username)/local/ports/tmp/work/home/(username)/local/work/ports/www/node/work/node-v0.12.0/out/Release/.deps//home/(username)/local/ports/tmp/work/home/(username)/local/work/ports/www/node/work/node-v0.12.0/out/Release/obj.target/v8_libbase/deps/v8/src/base/logging.o.d.raw -O2 -pipe -fstack-protector -fno-strict-aliasing -c -o /home/(username)/local/ports/tmp/work/home/(username)/local/work/ports/www/node/work/node-v0.12.0/out/Release/obj.target/v8_libbase/deps/v8/src/base/logging.o ../deps/v8/src/base/logging.cc
../deps/v8/src/base/logging.cc:9:23: warning: execinfo.h: No such file or directory
../deps/v8/src/base/logging.cc: In function 'void v8::base::DumpBacktrace()':
../deps/v8/src/base/logging.cc:25: error: 'backtrace' was not declared in this scope
../deps/v8/src/base/logging.cc:26: error: 'backtrace_symbols' was not declared in this scope
gmake[1]: *** [/home/(username)/local/ports/tmp/work/home/(username)/local/work/ports/www/node/work/node-v0.12.0/out/Release/obj.target/v8_libbase/deps/v8/src/base/logging.o] Error 1
gmake[1]: Leaving directory `/home/(username)/local/ports/tmp/work/home/(username)/local/work/ports/www/node/work/node-v0.12.0/out'
gmake: *** [node] Error 2
*** [do-build] Error code 1

だめですね。

libexecinfoをインストールしないと駄目っぽいので、root権限なしでNode.js、MongoDBをインストールする方法を参考にインストール
・・・しようと思ったら、上記の記事で紹介されているところにlibexecinfoがないので、ここからダウンロード
僕の場合は
~/srcにダウンロードした。そうすると勝手に解凍される。
この後、~/local/work/ports/devel/libexecinfo/に移送してmake install
これだけだと駄目みたいなので、~/local/includeにダウンロードしたlibexecinfoのexecinfo.hを格納。
その後、.cshrcに
setenv CPATH ~/local/include
を追加する。
で、nodeをビルドでうまくいくはず

この後
nodev-v
でバージョンがでればOK
出ない場合は、
source ~/.cshrc
を実行するといいかもしれない。

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)