Failed to install: node-red-node-sqlite

I tried to install node-red-node-sqlite 0.6.0, both from node-red’s manage palette, and from cmd by running this command npm i --unsafe-perm node-red-node-sqlite, but the installation is not successful, there are the following errors:

C:\Users\Utente\.node-red>npm i --unsafe-perm node-red-node-sqlite
npm WARN deprecated node-pre-gyp@0.11.0: Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future
npm ERR! code 1
npm ERR! path C:\Users\Utente\.node-red\node_modules\sqlite3
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node-pre-gyp install --fallback-to-build
npm ERR! Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\Utente\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js configure --fallback-to-build --module=C:\Users\Utente\.node-red\node_modules\sqlite3\lib\binding\node-v88-win32-x64\node_sqlite3.node --module_name=node_sqlite3 --module_path=C:\Users\Utente\.node-red\node_modules\sqlite3\lib\binding\node-v88-win32-x64 --napi_version=7 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v88 --msvs_version=2019' (1)
npm ERR! node-pre-gyp info it worked if it ends with ok
npm ERR! node-pre-gyp info using node-pre-gyp@0.11.0
npm ERR! node-pre-gyp info using node@15.6.0 | win32 | x64
npm ERR! node-pre-gyp WARN Using request for node-pre-gyp https download
npm ERR! node-pre-gyp info check checked for "C:\Users\Utente\.node-red\node_modules\sqlite3\lib\binding\node-v88-win32-x64\node_sqlite3.node" (not found)
npm ERR! node-pre-gyp http GET https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v88-win32-x64.tar.gz
npm ERR! node-pre-gyp http 403 https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v88-win32-x64.tar.gz
npm ERR! node-pre-gyp WARN Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v88-win32-x64.tar.gz
npm ERR! node-pre-gyp WARN Pre-built binaries not found for sqlite3@4.2.0 and node@15.6.0 (node-v88 ABI, unknown) (falling back to source compile with node-gyp)
npm ERR! node-pre-gyp http 403 status code downloading tarball https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v88-win32-x64.tar.gz
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@7.1.2
npm ERR! gyp info using node@15.6.0 | win32 | x64
npm ERR! gyp info ok
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@7.1.2
npm ERR! gyp info using node@15.6.0 | win32 | x64
npm ERR! gyp ERR! find Python
npm ERR! gyp ERR! find Python Python is not set from command line or npm configuration
npm ERR! gyp ERR! find Python Python is not set from environment variable PYTHON
npm ERR! gyp ERR! find Python checking if "python3" can be used
npm ERR! gyp ERR! find Python - "python3" is not in PATH or produced an error
npm ERR! gyp ERR! find Python checking if "python" can be used
npm ERR! gyp ERR! find Python - "python" is not in PATH or produced an error
npm ERR! gyp ERR! find Python checking if "python2" can be used
npm ERR! gyp ERR! find Python - "python2" is not in PATH or produced an error
npm ERR! gyp ERR! find Python checking if Python is C:\Python37\python.exe
npm ERR! gyp ERR! find Python - "C:\Python37\python.exe" could not be run
npm ERR! gyp ERR! find Python checking if Python is C:\Python27\python.exe
npm ERR! gyp ERR! find Python - "C:\Python27\python.exe" could not be run
npm ERR! gyp ERR! find Python checking if the py launcher can be used to find Python
npm ERR! gyp ERR! find Python - "py.exe" is not in PATH or produced an error
npm ERR! gyp ERR! find Python
npm ERR! gyp ERR! find Python **********************************************************
npm ERR! gyp ERR! find Python You need to install the latest version of Python.
npm ERR! gyp ERR! find Python Node-gyp should be able to find and use Python. If not,
npm ERR! gyp ERR! find Python you can try one of the following options:
npm ERR! gyp ERR! find Python - Use the switch --python="C:\Path\To\python.exe"
npm ERR! gyp ERR! find Python   (accepted by both node-gyp and npm)
npm ERR! gyp ERR! find Python - Set the environment variable PYTHON
npm ERR! gyp ERR! find Python - Set the npm configuration variable python:
npm ERR! gyp ERR! find Python   npm config set python "C:\Path\To\python.exe"
npm ERR! gyp ERR! find Python For more information consult the documentation at:
npm ERR! gyp ERR! find Python https://github.com/nodejs/node-gyp#installation
npm ERR! gyp ERR! find Python **********************************************************
npm ERR! gyp ERR! find Python
npm ERR! gyp ERR! configure error
npm ERR! gyp ERR! stack Error: Could not find any Python installation to use
npm ERR! gyp ERR! stack     at PythonFinder.fail (C:\Users\Utente\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\find-python.js:302:47)
npm ERR! gyp ERR! stack     at PythonFinder.runChecks (C:\Users\Utente\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\find-python.js:136:21)
npm ERR! gyp ERR! stack     at PythonFinder.<anonymous> (C:\Users\Utente\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\find-python.js:200:18)
npm ERR! gyp ERR! stack     at PythonFinder.execFileCallback (C:\Users\Utente\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\find-python.js:266:16)
npm ERR! gyp ERR! stack     at exithandler (node:child_process:340:5)
npm ERR! gyp ERR! stack     at ChildProcess.errorhandler (node:child_process:352:5)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:379:20)
npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:283:12)
npm ERR! gyp ERR! stack     at onErrorNT (node:internal/child_process:477:16)
npm ERR! gyp ERR! stack     at processTicksAndRejections (node:internal/process/task_queues:81:21)
npm ERR! gyp ERR! System Windows_NT 10.0.19042
npm ERR! gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Utente\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" "--fallback-to-build" "--module=C:\\Users\\Utente\\.node-red\\node_modules\\sqlite3\\lib\\binding\\node-v88-win32-x64\\node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=C:\\Users\\Utente\\.node-red\\node_modules\\sqlite3\\lib\\binding\\node-v88-win32-x64" "--napi_version=7" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v88" "--msvs_version=2019"
npm ERR! gyp ERR! cwd C:\Users\Utente\.node-red\node_modules\sqlite3
npm ERR! gyp ERR! node -v v15.6.0
npm ERR! gyp ERR! node-gyp -v v7.1.2
npm ERR! gyp ERR! not ok
npm ERR! node-pre-gyp ERR! build error
npm ERR! node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\Utente\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js configure --fallback-to-build --module=C:\Users\Utente\.node-red\node_modules\sqlite3\lib\binding\node-v88-win32-x64\node_sqlite3.node --module_name=node_sqlite3 --module_path=C:\Users\Utente\.node-red\node_modules\sqlite3\lib\binding\node-v88-win32-x64 --napi_version=7 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v88 --msvs_version=2019' (1)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (C:\Users\Utente\.node-red\node_modules\node-pre-gyp\lib\util\compile.js:83:29)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.emit (node:events:379:20)
npm ERR! node-pre-gyp ERR! stack     at maybeClose (node:internal/child_process:1065:16)
npm ERR! node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:296:5)
npm ERR! node-pre-gyp ERR! System Windows_NT 10.0.19042
npm ERR! node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Utente\\.node-red\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build"
npm ERR! node-pre-gyp ERR! cwd C:\Users\Utente\.node-red\node_modules\sqlite3
npm ERR! node-pre-gyp ERR! node -v v15.6.0
npm ERR! node-pre-gyp ERR! node-pre-gyp -v v0.11.0
npm ERR! node-pre-gyp ERR! not ok

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Utente\AppData\Local\npm-cache\_logs\2021-05-05T10_21_01_261Z-debug.log
  • Node-RED version: 1.3.4
  • node.js version: 15.6.0
  • npm version: 7.11.1
  • Platform/OS: Windows 10 Home version 20H2
  • Browser: Chrome
  • Python version: 3.9.5
    thanks in advance.

This has been covered on the forum many times.

Essentially, npm cant find a binary so tries to build sqlite. e.g...

...but once you get past that, you would get an error about not finding visual studio etc etc.

The bottom line is, install windows build essentials, restart node-red, try again.

1 Like

Also covered many times... Node15 is not supported for the very reason that sometimes nodes that need binary compilation (like sqlite) often fail on these dev versions of node js.

1 Like

thank you for your answers.
So, I installed node.js version: 14.16.1 and I tried to install npm install -g windows-build-tools, but there are other errors:

PS C:> npm install -g windows-build-tools
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
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 C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node ./dist/index.js
npm ERR! C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\os.js:53
npm ERR! throw resultError;
npm ERR! ^
npm ERR!
npm ERR! Error: spawnSync powershell.exe ENOENT
npm ERR! at Object.spawnSync (internal/child_process.js:1067:20)
npm ERR! at Object.spawnSync (child_process.js:602:24)
npm ERR! at spawnSync (C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:67:36)
npm ERR! at Object.queryRegFromPowershell (C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:73:3)
npm ERR! at loop (C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:113:16)
npm ERR! at C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:116:7
npm ERR! at C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:100:5
npm ERR! at spawnSync (C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:68:2)
npm ERR! at Object.queryRegFromRegExe (C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:96:3)
npm ERR! at loop (C:\Users\Utente\AppData\Roaming\npm\node_modules\windows-build-tools\node_modules\in-gfw\lib\geo.js:113:16) {
npm ERR! errno: -4058,
npm ERR! code: 'ENOENT',
npm ERR! syscall: 'spawnSync powershell.exe',
npm ERR! path: 'powershell.exe',
npm ERR! spawnargs: [
npm ERR! '-NoProfile',
npm ERR! '-ExecutionPolicy',
npm ERR! '-Command',
npm ERR! '& {(Get-ItemProperty -Path "Registry::HKU\.DEFAULT\Control Panel\International\Geo" -Name Nation).Nation}'
npm ERR! ]
npm ERR! }

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Utente\AppData\Local\npm-cache_logs\2021-05-05T18_00_22_086Z-debug.log
`

I believe this is due to changing node version.

The easiest solution is to delete global node_modules (C:\Users\Utente\AppData\Roaming\npm\node_modules) folder, install build tools, then reinstall node-red, then sqlite.

1 Like

I followed your instructions, but when I run node-red, this happens:

C:\Users\Utente>node-red
internal/modules/cjs/loader.js:883
  throw err;
  ^

Error: Cannot find module 'C:\Users\Utente\AppData\Roaming\npm\node_modules\node-red\red.js'
←[90m    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)←[39m
←[90m    at Function.Module._load (internal/modules/cjs/loader.js:725:27)←[39m
←[90m    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)←[39m
←[90m    at internal/main/run_main_module.js:17:47←[39m {
  code: ←[32m'MODULE_NOT_FOUND'←[39m,
  requireStack: []
}

What am I doing wrong?

Did you reinstall node-red as per documentation?

1 Like

I did these steps:

  • npm remove -g node-red node-red-admin
  • rm -R ~/. node-red
  • npm install -g --unsafe-perm node-red

Did you do these bits before re-installing node-red?

1 Like

yes, I do that.
I try to remake steps, but when i run this comand, there is this errors:

How can I proceed?

This was a known issue in NPM v7

And something is proably messed up on your user account due to having previously had installed V15 and NPM v7.x

I suspect a re-do is necessary.

See this thread to completely remove node and npm then start again.

1 Like

Sorry again if I bother, I would like to ask for advice, I deleted everything as it was indicated, on my PC now there is no trace of node-red and the other components, I would just ask if the order of the components to be installed, and the versions mentioned, were right:

  • windows-build-tools 2
  • node.js LTS Version: 14.16.1 (includes npm 6.14.12)
    -node-red
    -node-sqlite?

Also, do I need to install node-Gyp-npm?

  • node.js LTS Version: 14.16.1 (includes npm 6.14.12)
  • Install windows-build-tools
  • Install node-red

Then run node red once (this creates c:\users\?user?\.node-red

Then..

  • Stop node-red
  • Open command prompt cmd
    • cd c:\users\?user?\.node-red
    • npm install node-red-node-sqlite

Note: substitute ?user? for your user name as found in c:\users

1 Like

thank you so much for your support!

1 Like

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.