In my electron app I have installed sqlite3 via npm
npm install sqlite3
But once i try to interact with the database it cant find the datab
1: Include rebuild in Package.json file and install npm electron-rebuild
{
"name": "electron-quick-start",
"version": "1.0.0",
"description": "A minimal Electron application",
"main": "main.js",
"scripts": {
"start": "electron .",
"rebuild": "electron-rebuild -f -w sqlite3"
},
"repository": "https://github.com/electron/electron-quick-start",
"keywords": [
"Electron",
"quick",
"start",
"tutorial",
"demo"
],
"author": "author",
"license": "CC0-1.0",
"devDependencies": {
"@types/file-saver": "0.0.1",
"electron": "1.7",
"electron-rebuild": "^1.6.0"
},
"dependencies": {
"sqlite3": "^3.1.13"
}
}
2: install python 2.7 and add its path to environmental variable e.g C:\Python27;
3: npm INSTALL and then npm run rebuild
Firstly:
npm install electron-rebuild
then try this several times:
./node_modules/.bin/electron-rebuild -w sqlite3 -p
You have to build this native module with Electron based configurations.
Try:
1. cd node_modules/sqlite3
2. npm run prepublish
3. node-gyp configure --module_name=node_sqlite3 --module_path=../lib/binding/electron-v1.3-win32-x64
4. node-gyp rebuild --target=1.3.1 --arch=x64 --target_platform=win32 --dist-url=https://atom.io/download/atom-shell --module_name=node_sqlite3 --module_path=../lib/binding/electron-v1.3-win32-x64
This is assuming you have the very latest version of electron. You can change the config to match your electron version.
You have just installed the sqlite3
module but you need to rebuild it to run on a specific platform. You'll need electron-rebuild
package to rebuild the binary.
Run Command npm i --save-dev electron-rebuild
from your project directory.After Installing the ˚electron-rebuild
. Ru the following command to build sqlite3 binary for your platform.
./node_modules/.bin/electron-rebuild -w sqlite3 -p
If rebuild fails, run npm install
and then run the above-given command once again.
If none of these are working try this.
npm install electron-builder
Add this in your script tag of package.json file
"postinstall": "electron-builder install-app-deps"
Then execute this
npm run postinstall
This saved a lot of my time