1. 사전 정보
Node.js에 대해서는 맑님이 올려주신 http://sarc.io/index.php/miscellaneous/250-node-js-1 을 읽어보세요.
2. 소스 코드를 이용한 설치
저는 이 Node.js를 Source Code로 설치하려고 합니다.
물론 https://nodejs.org/download/ 를 살펴보시면 알 수 있듯이 굉장히 편한 방법도 제공이 되고 있어요.
적절한 방법을 선택하면 됩니다.
3. configure
node-v0.12.4.tar.gz 파일을 다운로드 받은 후, 설치하고자 하는 디렉토리를 prefix 로 잡고 configure 합니다.
# ./configure --prefix=/app/nodejs creating ./icu_config.gypi { 'target_defaults': { 'cflags': [], 'default_configuration': 'Release', 'defines': [], 'include_dirs': [], 'libraries': []}, 'variables': { 'clang': 0, 'gcc_version': 44, 'host_arch': 'x64', 'icu_small': 'false', 'node_install_npm': 'true', 'node_prefix': '/app/nodejs', 'node_shared_cares': 'false', 'node_shared_http_parser': 'false', 'node_shared_libuv': 'false', 'node_shared_openssl': 'false', 'node_shared_v8': 'false', 'node_shared_zlib': 'false', 'node_tag': '', 'node_use_dtrace': 'false', 'node_use_etw': 'false', 'node_use_mdb': 'false', 'node_use_openssl': 'true', 'node_use_perfctr': 'false', 'openssl_no_asm': 0, 'python': '/usr/bin/python', 'target_arch': 'x64', 'uv_library': 'static_library', 'uv_parent_path': '/deps/uv/', 'uv_use_dtrace': 'false', 'v8_enable_gdbjit': 0, 'v8_enable_i18n_support': 0, 'v8_no_strict_aliasing': 1, 'v8_optimized_debug': 0, 'v8_random_seed': 0, 'v8_use_snapshot': 'true', 'want_separate_host_toolset': 0}} creating ./config.gypi creating ./config.mk
4. make
make 갑니다.
LINK(target) /app/depot/nodejs-v0.12.4/out/Release/nodejs: Finished touch /app/depot/nodejs-v0.12.4/out/Release/obj.target/nodejs_dtrace_header.stamp touch /app/depot/nodejs-v0.12.4/out/Release/obj.target/nodejs_dtrace_provider.stamp touch /app/depot/nodejs-v0.12.4/out/Release/obj.target/nodejs_dtrace_ustack.stamp touch /app/depot/nodejs-v0.12.4/out/Release/obj.target/nodejs_etw.stamp touch /app/depot/nodejs-v0.12.4/out/Release/obj.target/nodejs_mdb.stamp touch /app/depot/nodejs-v0.12.4/out/Release/obj.target/nodejs_perfctr.stamp touch /app/depot/nodejs-v0.12.4/out/Release/obj.target/specialize_node_d.stamp make[1]: Leaving directory `/app/depot/nodejs-v0.12.4/out' ln -fs out/Release/nodejs node
make 앞부분은 생략이 되어 있구요. 그런데 make 시간이 굉장히 오래 걸렸습니다.
make install 도 잘 되었고 내용은 생략하겠습니다.
이제 설치된 디렉토리 구조 확인해 보겠습니다.
# pwd /app/nodejs # ls -l 합계 16 drwxr-xr-x 2 root root 4096 2015-06-07 00:16 bin drwxr-xr-x 3 root root 4096 2015-06-07 00:16 include drwxr-xr-x 3 root root 4096 2015-06-07 00:16 lib drwxr-xr-x 4 root root 4096 2015-06-07 00:16 share #
당연히 무언가 실행파일은 bin 하위에 있겠지요.
# ls -l 합계 15848 -rwxr-xr-x 1 root root 16221824 2015-06-06 23:56 node lrwxrwxrwx 1 root root 38 2015-06-07 00:16 npm -> ../lib/node_modules/npm/bin/npm-cli.js
그럼 간단히 테스트 파일을 만들어서 실행해 보겠습니다.
var os = require('os'); console.log("** os.type = " + os.type()); console.log("** os.platform = " + os.platform()); console.log("** os.arch = " + os.arch());
실행합니다.
# ./node osinfo.js ** os.type = Linux ** os.platform = linux ** os.arch = x64
끝!