This guide is based on the very informative discussion in this article: Using node_sqlite3 with Electron
Install sqlite3
npm install sqlite3 --save
Navigate into the sqlite3 module folder
cd node_modules/sqlite3
Install nan locally into the sqlite3 folder (you will need it for the next step)
npm install nan@~2.1.0 --save
Prebulish the module:
npm run prepublish
Start compilation by setting the module path to the correct version, in this case node-v47-win32-x64
. It is located in your sqlite3 folder.
node-gyp configure --module_name=node_sqlite3 --module_path=../lib/binding/node-v47-win32-x64
Finish compilation by setting your build to the correct target
version. You will find the target
version of your Electron-App in the version
file in the root folder of your Electron directory.
node-gyp rebuild --target=0.36.0 --arch=x64 --target_platform=win32 --dist-url=https://atom.io/download/atom-shell --module_name=node_sqlite3 --module_path=../lib/binding/node-v47-win32-x64
Now you can use sqlite3 in your Electron app.
Hi, I followed these steps list above and rebuild successfully. But when I run the electron app, I got an error:Uncaught Error:
A dynamic link library (DLL) initialization routine failed.
?\D:\Shadow\Node\electron-start\node_modules\sqlite3\lib\binding\node-v47-win32-x64\node_sqlite3.node.
Below is my code in index.html ( I haven't written any code in other files):
I don't have any idea about this error, please help me to point out what the error is. This problem has troubled me for a long time.