Error starting mix phx.server - Could not start Node.js watcher because script ...webpack.js does not exist

I just started a new Phoenix LiveView Application. when I go to start my server using mix phx.server I get the following error:

[error] Could not start Node.js watcher because script “/Users/kimberlybrooke/centric/assets/node_modules/webpack/bin/webpack.js” does not exist. Your Phoenix application is still running, however assets won’t be compiled. You may fix this by running “npm install” inside the “assets” directory.

I then followed the instructions to fix the error by running “npm install” inside the assets directory. and I get the below:

npm WARN deprecated urix@0.1.0: Please see GitHub - lydell/urix: [DEPRECATED] Makes Windows-style paths more unix and URI friendly.
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated resolve-url@0.2.1: GitHub - lydell/resolve-url: [DEPRECATED] Like Node.js’ `path.resolve`/`url.resolve` for the browser.
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See There’s Math.random(), and then there’s Math.random() · V8 for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see Request’s Past, Present and Future · Issue #3142 · request/request · GitHub
npm ERR! code 1
npm ERR! path /Users/kimberlybrooke/centric/assets/node_modules/node-sass
npm ERR! command failed
npm ERR! command sh -c node scripts/build.js
npm ERR! Building: /usr/local/Cellar/node/16.4.0/bin/node /Users/kimberlybrooke/centric/assets/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp verb cli [
npm ERR! gyp verb cli ‘/usr/local/Cellar/node/16.4.0/bin/node’,
npm ERR! gyp verb cli ‘/Users/kimberlybrooke/centric/assets/node_modules/node-gyp/bin/node-gyp.js’,
npm ERR! gyp verb cli ‘rebuild’,
npm ERR! gyp verb cli ‘–verbose’,
npm ERR! gyp verb cli ‘–libsass_ext=’,
npm ERR! gyp verb cli ‘–libsass_cflags=’,
npm ERR! gyp verb cli ‘–libsass_ldflags=’,
npm ERR! gyp verb cli ‘–libsass_library=’
npm ERR! gyp verb cli ]
npm ERR! gyp info using node-gyp@3.8.0
npm ERR! gyp info using node@16.4.0 | darwin | x64
npm ERR! gyp verb command rebuild []
npm ERR! gyp verb command clean []
npm ERR! gyp verb clean removing “build” directory
npm ERR! gyp verb command configure []
npm ERR! gyp verb check python checking for Python executable “python2” in the PATH
npm ERR! gyp verb which succeeded python2 /usr/bin/python2
npm ERR! gyp verb check python version /usr/bin/python2 -c "import sys; print "2.7.16 npm ERR! gyp verb check python version .%s.%s" % sys.version_info[:3];" returned: %j
npm ERR! gyp verb get node dir no --target version specified, falling back to host node version: 16.4.0
npm ERR! gyp verb command install [ ‘16.4.0’ ]
npm ERR! gyp verb install input version string “16.4.0”
npm ERR! gyp verb install installing version: 16.4.0
npm ERR! gyp verb install --ensure was passed, so won’t reinstall if already installed
npm ERR! gyp verb install version is already installed, need to check “installVersion”
npm ERR! gyp verb got “installVersion” 9
npm ERR! gyp verb needs “installVersion” 9
npm ERR! gyp verb install version is good
npm ERR! gyp verb get node dir target node version installed: 16.4.0
npm ERR! gyp verb build dir attempting to create “build” dir: /Users/kimberlybrooke/centric/assets/node_modules/node-sass/build
npm ERR! gyp verb build dir “build” dir needed to be created? /Users/kimberlybrooke/centric/assets/node_modules/node-sass/build
npm ERR! gyp verb build/config.gypi creating config file
npm ERR! gyp verb build/config.gypi writing out config file: /Users/kimberlybrooke/centric/assets/node_modules/node-sass/build/config.gypi
npm ERR! (node:44682) [DEP0150] DeprecationWarning: Setting process.config is deprecated. In the future the property will be read-only.
npm ERR! (Use node --trace-deprecation ... to show where the warning was created)
npm ERR! gyp verb config.gypi checking for gypi file: /Users/kimberlybrooke/centric/assets/node_modules/node-sass/config.gypi
npm ERR! gyp verb common.gypi checking for gypi file: /Users/kimberlybrooke/centric/assets/node_modules/node-sass/common.gypi
npm ERR! gyp verb gyp gyp format was not specified; forcing “make”
npm ERR! gyp info spawn /usr/bin/python2
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args ‘/Users/kimberlybrooke/centric/assets/node_modules/node-gyp/gyp/gyp_main.py’,
npm ERR! gyp info spawn args ‘binding.gyp’,
npm ERR! gyp info spawn args ‘-f’,
npm ERR! gyp info spawn args ‘make’,
npm ERR! gyp info spawn args ‘-I’,
npm ERR! gyp info spawn args ‘/Users/kimberlybrooke/centric/assets/node_modules/node-sass/build/config.gypi’,
npm ERR! gyp info spawn args ‘-I’,
npm ERR! gyp info spawn args ‘/Users/kimberlybrooke/centric/assets/node_modules/node-gyp/addon.gypi’,
npm ERR! gyp info spawn args ‘-I’,
npm ERR! gyp info spawn args ‘/Users/kimberlybrooke/.node-gyp/16.4.0/include/node/common.gypi’,
npm ERR! gyp info spawn args ‘-Dlibrary=shared_library’,
npm ERR! gyp info spawn args ‘-Dvisibility=default’,
npm ERR! gyp info spawn args ‘-Dnode_root_dir=/Users/kimberlybrooke/.node-gyp/16.4.0’,
npm ERR! gyp info spawn args ‘-Dnode_gyp_dir=/Users/kimberlybrooke/centric/assets/node_modules/node-gyp’,
npm ERR! gyp info spawn args ‘-Dnode_lib_file=/Users/kimberlybrooke/.node-gyp/16.4.0/<(target_arch)/node.lib’,
npm ERR! gyp info spawn args ‘-Dmodule_root_dir=/Users/kimberlybrooke/centric/assets/node_modules/node-sass’,
npm ERR! gyp info spawn args ‘-Dnode_engine=v8’,
npm ERR! gyp info spawn args ‘–depth=.’,
npm ERR! gyp info spawn args ‘–no-parallel’,
npm ERR! gyp info spawn args ‘–generator-output’,
npm ERR! gyp info spawn args ‘build’,
npm ERR! gyp info spawn args ‘-Goutput_dir=.’
npm ERR! gyp info spawn args ]
npm ERR! No receipt for ‘com.apple.pkg.CLTools_Executables’ found at ‘/’.
npm ERR!
npm ERR! No receipt for ‘com.apple.pkg.DeveloperToolsCLILeo’ found at ‘/’.
npm ERR!
npm ERR! No receipt for ‘com.apple.pkg.DeveloperToolsCLI’ found at ‘/’.
npm ERR!
npm ERR! gyp: No Xcode or CLT version detected!
npm ERR! gyp ERR! configure error
npm ERR! gyp ERR! stack Error: gyp failed with exit code: 1
npm ERR! gyp ERR! stack at ChildProcess.onCpExit (/Users/kimberlybrooke/centric/assets/node_modules/node-gyp/lib/configure.js:345:16)
npm ERR! gyp ERR! stack at ChildProcess.emit (node:events:394:28)
npm ERR! gyp ERR! stack at Process.ChildProcess._handle.onexit (node:internal/child_process:290:12)
npm ERR! gyp ERR! System Darwin 19.6.0
npm ERR! gyp ERR! command “/usr/local/Cellar/node/16.4.0/bin/node” “/Users/kimberlybrooke/centric/assets/node_modules/node-gyp/bin/node-gyp.js” “rebuild” “–verbose” “–libsass_ext=” “–libsass_cflags=” “–libsass_ldflags=” “–libsass_library=”
npm ERR! gyp ERR! cwd /Users/kimberlybrooke/centric/assets/node_modules/node-sass
npm ERR! gyp ERR! node -v v16.4.0
npm ERR! gyp ERR! node-gyp -v v3.8.0
npm ERR! gyp ERR! not ok
npm ERR! Build failed with error code: 1

npm ERR! A complete log of this run can be found in:
npm ERR! /Users/kimberlybrooke/.npm/_logs/2021-07-15T13_44_09_223Z-debug.log

And if I go to start my phoenix application nothing has been fixed.

Any advice on how to get the error to go away?

You have hit this issue: Getting started guide raises an error: npm install, node-gyp python2 couldn't be found · Issue #4359 · phoenixframework/phoenix · GitHub

It will be fixed in Phoenix 1.6 “due out very soon”. In the meantime you can follow Chris’s instructions (in a comment in the aforementioned ticket) on how to remove Sass from the project, or replace the node-sass package with sass.

2 Likes

Thank you!

We have addressed this by removing sass from the phx.new generator in 1.6 which is due out very soon [chrismccord]

:+1: :+1:

1 Like

So it totally worked to do what Chris McCord had written up to do, when I did it yesterday, manually removing sass and then I had to also still do “npm install”.

Today when I went to do “npm install” inside assets with a new project after I had manually removed all the sass, it gave me this error. Any suggestions?

pm WARN tarball tarball data for @babel/core@https://registry.npmjs.org/@babel/core/-/core-7.14.6.tgz (sha512-gJnOEWSqTk96qG5BoIrl5bVtc23DCycmIePPYnamY9RboYdI4nFy5vAQMSl81O5K/W0sLDWfGysnOECC+KUUCA==) seems to be corrupted. Trying again.
npm ERR! code ENOENT
npm ERR! syscall lstat
npm ERR! path /Users/kimberlybrooke/.npm/_cacache/content-v2/sha512/ae/fc/3741365cf25031c95aea7121959b9c8ffc827651c07753482b684dcb085a19d189f6c78128552a8929d07f4f933e14b7113e3cf84c369c45fdce09f354cf
npm ERR! errno -2
npm ERR! enoent ENOENT: no such file or directory, lstat ‘/Users/kimberlybrooke/.npm/_cacache/content-v2/sha512/ae/fc/3741365cf25031c95aea7121959b9c8ffc827651c07753482b684dcb085a19d189f6c78128552a8929d07f4f933e14b7113e3cf84c369c45fdce09f354cf’
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! A complete log of this run can be found in:
npm ERR! /Users/kimberlybrooke/.npm/_logs/2021-07-16T22_41_23_850Z-debug.log
kimberlybrooke@Kimberlys-MacBook-Pro assets %