-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
doc(wiki): Created Updating npm's bundled node gyp (markdown)
- Loading branch information
1 parent
d1cd237
commit e0ac8d1
Showing
1 changed file
with
38 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
`npm` bundles its own, internal, copy of `node-gyp`. This internal copy is independent of any globally installed copy of node-gyp that you may have installed via `npm install -g node-gyp`. | ||
|
||
This means that while `node-gyp` doesn't get installed into your `$PATH` by default, npm still keeps its own copy to invoke when you attempt to `npm install` a native addon. | ||
|
||
Sometimes, you may need to update npm's internal node-gyp to a newer version than what is installed. A simple `npm install -g node-gyp` _won't_ do the trick since npm will still continue to use its internal copy over the global one. | ||
|
||
So instead: | ||
|
||
### Linux, Mac OS X, Solaris, etc. | ||
|
||
Unix is easy. Just run the following command. Use `sudo` if necessary. | ||
|
||
``` bash | ||
$ [sudo] npm explore npm -g -- npm install node-gyp | ||
``` | ||
|
||
### Windows | ||
|
||
Windows is a bit tricker, since `npm` gets installed to the "Program Files" directory, which needs admin privileges in order to modify on current Windows. Therefore, run the following commands __inside a `cmd.exe` started with "Run as Administrator"__: | ||
|
||
First we need to find the location of `node`. If you don't already know the location that `node.exe` got installed to, then run: | ||
|
||
``` bash | ||
$ npm install -g which | ||
$ which node | ||
``` | ||
|
||
Now `cd` to the directory that `node.exe` is contained in, and with `node_modules\npm` at the end. i.e.: | ||
|
||
``` bash | ||
$ cd "C:\Program Files\nodejs\node_modules\npm" | ||
``` | ||
|
||
Now you can finally run: | ||
|
||
``` bash | ||
npm install node-gyp | ||
``` |