I played with node for about a day, around a year ago. Needed to clean that up and do a fresh install. Node's young, and will require more frequent upkeep. Here's my notes to myself during the installation.
*note there's multiple methods to install node. I wanted less 'magic', so I avoided installing via homebrew or such.
Installation Instructions can be found at their github (https://github.com/joyent/node/wiki/Installation). I choose 'install from the repo' version.
"Or, if youd like to install from the repository:
git clone https://github.com/joyent/node.git
cd node
git checkout v0.6.7
./configure
make
sudo make install"
So, to do this, find any nice location to make a temporary folder to put the repo clone (in this case, the home folder is the location, and swinstall is the temporary drop location):
$ cd ~
$ mkdir swinstall
* this will be a worthless folder soon, but first go in there and grab the repo from git:
$ cd swinstall/
$ git clone https://github.com/joyent/node.git
//Cloning into node...
//remote: Counting objects: 58528, done.
//remote: Compressing objects: 100% (15425/15425), done.
//remote: Total 58528 (delta 45817), reused 54463 (delta 42254)
//Receiving objects: 100% (58528/58528), 44.28 MiB | 1.25 MiB/s, done.
//Resolving deltas: 100% (45817/45817), done.
Now that you have a copy of the node repo, navigate into the new node folder to 'checkout' the version you'd like.
Note - you can grab any version of node want. You can browse the versions by using 'git branch -a' from within the node folder:
$ git branch -a
//(no branch)
//master
//remotes/origin/HEAD -> origin/master
//remotes/origin/cryptopad
//remotes/origin/debugProcess
//remotes/origin/dlopen
//remotes/origin/domains
//remotes/origin/domains2
//remotes/origin/eventsource
//remotes/origin/hash-rand-0.6
//remotes/origin/http_agent
//remotes/origin/isolates
//remotes/origin/isolates2
//remotes/origin/issue2061//remotes/origin/master
//remotes/origin/new-tty-binding
//remotes/origin/pathfix
//remotes/origin/pointer_bindings
//remotes/origin/reload
//remotes/origin/speed
//remotes/origin/v0.2
//remotes/origin/v0.4
//remotes/origin/v0.6
//remotes/origin/v8-3.1
//remotes/origin/v8upgrade
//remotes/origin/writev
//remotes/origin/writev2
However, following the directions we want v0.6.7
$ cd node/
$ git checkout v0.6.7
//Note: checking out 'v0.6.7'....
// And a bunch of info about being in a detached HEAD state.
//...
//configure' finished successfully (2.558s)
After the repo is checked out, you need to configure it. Configure checks your local system and makes sure you have what it needs to be happy.
$ ./configure
//localhost:node damion$ ./configure
//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 : not found
//Checking for function SSL_library_init : yes
//Checking for header openssl/crypto.h : yes
//Checking for library util : yes
//Checking for library rt : not found
//Checking for fdatasync(2) with c++ : no
//'configure' finished successfully (2.558s)
Once configure checks runs, and need to run 'make' which compiles node source into an executible file, ready for installation.
$ make
//Waf: Entering directory...
//DEST_OS: darwin
//DEST_CPU: x64
//...
//...
//'build' finished successfully (4m33.951s)
Almost there. Now you have the right version, it able to be run on your machine, and it has been compiled. All thats left is to actually install it.
$ sudo make install
Password:
//Waf: Entering directory...
//DEST_OS: darwin
//DEST_CPU: x64
//...
//...
//'install' finished successfully (0.938s)
Tada! Node is now installed in the /usr/local/lib directory. You can check using:
$ which node
///usr/local/bin/node
To check that the version is definately not the ancient version you downloaded a year ago and played with for a day, you can use:
$ node -v
//v0.6.7





