[Mac] Node.js インストール中にエラー Build failed: -> task failed (err #2): {task: uv uv.h -> uv.a}
Xcode で Command Line Tools をインストールして、かつ、osx-gcc-installerをインストールしたら、Node.js がインストールできなくなった問題を解決した話をご紹介します。
% nvm install v0.6.19 Additional options while compiling: ######################################################################## 100.0% Checking for program g++ or c++ : /usr/bin/g++ Checking for program cpp : /usr/bin/cpp Checking for program ar : /usr/bin/ar Checking for program ranlib : /usr/bin/ranlib Checking for g++ : ok Checking for program gcc or cc : /usr/bin/gcc Checking for gcc : ok Checking for library dl : yes Checking for openssl : yes Checking for library util : yes Checking for library rt : not found Checking for fdatasync(2) with c++ : no 'configure' finished successfully (0.250s) Waf: Entering directory `/Users/your_username/.nvm/src/node-v0.6.19/out' DEST_OS: darwin DEST_CPU: x64 Parallel Jobs: 1 Product type: program [ 1/35] copy: src/node_config.h.in -> out/Release/src/node_config.h [ 2/35] cc: deps/http_parser/http_parser.c -> out/Release/deps/http_parser/http_parser_3.o /usr/bin/gcc -rdynamic -pthread -m64 -arch x86_64 -g -O3 -DHAVE_OPENSSL=1 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_DARWIN_USE_64_BIT_INODE=1 -DHAVE_FDATASYNC=0 -DARCH="x64" -DPLATFORM="darwin" -D__POSIX__=1 -Wno-unused-parameter -D_FORTIFY_SOURCE=2 -IRelease/deps/http_parser -I../deps/http_parser ../deps/http_parser/http_parser.c -c -o Release/deps/http_parser/http_parser_3.o [ 3/35] src/node_natives.h: src/node.js lib/dgram.js lib/console.js lib/buffer.js lib/querystring.js lib/punycode.js lib/http.js lib/net.js lib/stream.js lib/events.js lib/util.js lib/module.js lib/_debugger.js lib/assert.js lib/fs.js lib/child_process.js lib/os.js lib/readline.js lib/vm.js lib/url.js lib/tls.js lib/crypto.js lib/sys.js lib/https.js lib/freelist.js lib/dns.js lib/_linklist.js lib/buffer_ieee754.js lib/tty.js lib/cluster.js lib/repl.js lib/path.js lib/string_decoder.js lib/timers.js lib/zlib.js lib/constants.js -> out/Release/src/node_natives.h [ 4/35] uv: deps/uv/include/uv.h -> out/Release/deps/uv/uv.a rm -f src/ares/*.o rm -f src/unix/ev/*.o rm -f src/unix/eio/*.o rm -f src/unix/*.o rm -rf test/run-tests.dSYM run-benchmarks.dSYM rm -f -f src/*.o *.a test/run-tests test/run-benchmarks ... make[1]: *** [src/unix/darwin.o] Error 1 Waf: Leaving directory `/Users/your_username/.nvm/src/node-v0.6.19/out' Build failed: -> task failed (err #2): {task: uv uv.h -> uv.a} make: *** [program] Error 1 nvm: install v0.6.19 failed! |
そもそも、Xcode の Command Line Tools 使うんだったら、osx-gcc-installer はインストールしてはいけなかったみたいです。
下記のコマンドで、一旦アンインストールして、もう一度 Command Line Tools をインストールすると、Node.js を正常にインストールすることができました。
% sudo /Library/Developer/Shared/uninstall-devtools --mode=all |
GNU GCC 4.2 が必要ならこれだけ、Homebrew でインストールした方が良さそうですね。
brew install apple-gcc42 |
以上です。