Cannot Install gulp-sass

19,018

Solution 1

Your first guess was good as it is a matter of path name. From the error message :

UNC paths are not supported. Defaulting to Windows directory.

Npm needed to access \\primary\home\mendsley\...\node_modules\node-sass so as to execute the gulp-sass installation script. But this path is a UNC path (Uniform Naming Convention) and therefore is not supported.

As a consequence, the npm command defaulted to C:/Windows instead and tries to execute the installation script of gulp-sass (install.js) but this script is, as you might guess, not present in this directory.

Solution 2

It could be a dependency hell problem with an older NodeJS or NPM version, too. gulp-sass depends on node-sass, which in turn depends on other packages, and they also depend on the right NodeJS and NPM version. For version 0.7.3 the full dependencies look like this:

├─┬ [email protected] │ ├── [email protected] │ └─┬ [email protected] │ ├─┬ [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ └── [email protected] │ ├─┬ [email protected] │ │ ├── [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ ├── [email protected] │ │ ├── [email protected] │ │ ├─┬ [email protected] │ │ │ ├── [email protected] │ │ │ ├── [email protected] │ │ │ └─┬ [email protected] │ │ │ ├── [email protected] │ │ │ └── [email protected] │ │ ├── [email protected] │ │ ├─┬ [email protected] │ │ │ ├── [email protected] │ │ │ └── [email protected] │ │ └─┬ [email protected] │ │ └── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├── [email protected] │ ├─┬ [email protected] │ │ ├─┬ [email protected] │ │ │ └── [email protected] │ │ └─┬ [email protected] │ │ └── [email protected] │ └── [email protected]

I had trouble to install version 0.7.3 of gulp-sass with the latest versions of NodeJS 5.2.0 and NPM 3.5.2. This older version of gulp-sass worked only with the older version of NodeJS 0.12.9 and NPM 2.14.9, see also https://github.com/sass/node-sass/issues/1166

Solution 3

Look at this:

"CMD.EXE was started with the above path as the current directory. UNC paths are not supported. Defaulting to Windows directory."

You can use the pushd command. As example for --global Installation for a domain user on network share:

pushd \\server\yourpath\user\AppData\Roaming\npm

hint: you could figure out the right path for global npm installations by using %appdata%\npm in your Explorer, the cmd answers:

Z:\user\AppData\Roaming\npm>

now you can type "npm install node-sass" (or gulp-sass or whatever)

Z:\user\AppData\Roaming\npm>npm install node-sass

without --global or -g, in this path you are "global"

if finished, then popd to disconnect the Z:

Share:
19,018
Mike
Author by

Mike

Just another self-taught developer.

Updated on July 30, 2022

Comments

  • Mike
    Mike almost 2 years

    I'm trying to learn how to use gulp / sass / and all the other fun tools with Nodejs and I'm having an issue installing gulp-sass. The process I'm using to install everything is:

    1.  Start Git Bash in the project folder
    2.  npm init
    3.  npm install gulp -g
    4.  npm install gulp --save-dev
    5.  npm install gulp-sass <- this is where I get errors
    

    Once I get to step five, I get the following error:

    $ npm install gulp-sass
    npm WARN package.json [email protected] No repository field.
    npm WARN package.json [email protected] No README data
    -
    > [email protected] install     \\primary\home\mendsley\profile\Desktop\project\node_modules\gulp-  sass\node_modules\node-sass
    > node scripts/install.js
    
    '\\primary\home\mendsley\profile\Desktop\project\node_modules\gulp-   sass\node_modules\node-sass'
    CMD.EXE was started with the above path as the current directory.
    UNC paths are not supported.  Defaulting to Windows directory.
    module.js:338
    throw err;
          ^
    Error: Cannot find module 'C:\Windows\scripts\install.js'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:278:25)
    at Function.Module.runMain (module.js:501:10)
    at startup (node.js:129:16)
    at node.js:814:3
    npm ERR! Windows_NT 6.1.7601
    npm ERR! argv "c:\\Program Files\\nodejs\\node.exe"     "c:\\Users\\mendsley\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js"     "install" "gulp-sass"
    npm ERR! node v0.12.1
    npm ERR! npm  v2.13.1
    npm ERR! code ELIFECYCLE
    
    npm ERR! [email protected] install: `node scripts/install.js`
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the [email protected] install script 'node scripts/install.js'.
    npm ERR! This is most likely a problem with the node-sass package,
    npm ERR! not with npm itself.
    npm ERR! Tell the author that this fails on your system:
    npm ERR!     node scripts/install.js
    npm ERR! You can get their info via:
    npm ERR!     npm owner ls node-sass
    npm ERR! There is likely additional logging output above.
    
    npm ERR! Please include the following file with any support request:
    npm ERR!     \\primary\home\mendsley\profile\Desktop\project\npm-debug.log
    

    I'm trying this on my work computer, so I'm not sure if that matters. The system admin says there should not be any issue and other people have no issue with same package...and talking to them, they offer no help. I tried everything on my personal laptop and gulp-sass installs just fine, so it is something with my work pc.

    My initial thought is it's a path issue, but then why do other packages install okay?

    I did uninstall/reinstall Nodejs, but that didn't help.

    Does anyone have an idea?

    Thanks in advance!

  • Mike
    Mike almost 9 years
    Is there a way I can get around this issue? Can I tell npm to use a specific path?
  • Michael P. Bazos
    Michael P. Bazos almost 9 years
    In Windows you can map a drive letter to a network path. You could try that, although I admit I'm not sure that will make progress.
  • Mike
    Mike almost 9 years
    So after talking with another system admin guy, the problem WAS the path. I was creating a folder on my desktop which is on a network and not actually on my machine. So I went into C: > Users > MYNAME and created my project folder that way. Once I did that, everything installed just fine. I'm sure folks will not like this, but you turned me onto the the resolution by bringing up the network share so I'm giving you the credit. Thank you :)
  • Michael P. Bazos
    Michael P. Bazos almost 9 years
    You're welcome. For the record, you could also try to map a drive letter, for example Z:, to the path \\primary\home and execute the install from Z:\mendsley\profile\Desktop\project. That might do the trick.