Cloud Servers Help

Compile Node.js with NPM from source - Ubuntu or Debian

While it is generally recommended that you use the more traditional Node.js install methods, you may want to instead compile Node.js from source if you need more direct control over your Node.js environment or you want to use a custom-compiled version.


  • A Ubuntu or Debian Server
  • Root or sudo permissions
  1. Update your apt repository:
    sudo apt-get update
  2. Install build essentials:
    sudo apt-get install build-essential openssl libssl-dev pkg-config
  3. Change to the src directory:
    cd /usr/local/src
  4. Make a node directory in your src folder:
    sudo mkdir node
  5. Enter the node directory:
    cd node
  6. Copy the Linux Binary from the Node.js download page and use wget to download the package. Make sure to replace the highlighted portion with node's current version:
    sudo wget
  7. Extract the tar file:
    sudo tar zxvf node-v6.9.2.tar.gz
  8. Now that our source code has been extracted, move to the node directory where the highlighted portion is the current version you downloaded:

    cd node-v6.9.2
  9. Note: This folder contains raw files that need to be compiled specifically for your particular architecture and kernel. Most source code packages like this come with a bash script called "configure" that will create all these files and set the options for you.

  10. Run the configure script:
    sudo ./configure
  11. Note: If you don't receive any errors or warnings, the the configure script ran successfully.

  12. Compile the code:
    sudo make

    make will begin compiling the code. This will take 5-10 minutes or even longer depending on your server resources.

  13. Now that make is compiled, install it:
    sudo make install
  14. Check the Node.js version:
    node --version
  15. Check the npm version:
    npm --version
  16. If you see the versions displayed for node and npm, you have successfully compiled Node.js with npm from source. You can now begin installing node modules through npm.

Next step

More info

Was This Article Helpful?
Thanks for your feedback. To speak with a customer service representative, please use the support phone number or chat option above.
Glad we helped! Anything more we can do for you?
Sorry about that. Tell us what was confusing or why the solution didn’t solve your problem.