-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"The specified module could not be found." although module does exist #2
Comments
I also count this problem |
Same thing here. How did you rebuild the module? Was it by simply using electron-rebuild? |
I've reproduced it in the nwtest. |
@fritx I'm experiencing this problem in Electron as well. Is this something you are working on? |
Yes, I'm trying to add an electron test to win-sqlcipher as well. unix-sqlcipher seems to have no problem with this, Sorry about the trouble, it would take a few days to look into the win problem. |
@fritx cool! Looking forward to it! This repository looks like a dream! It's been so hard to use sqlcipher with electron on Windows and win-sqlcipher just looks THE plug n' play solution! |
I solve this problem by rebuilding sqlite3 with electron and openssl. other things to remind, you may need to build sqlcipher with the static lib, otherwise your app can not run in other's computer |
@lihang1870719 👍 nice, could you share more details? What versions of node/npm/node-gyp/node-pre-gyp stuffs did you use, @ALL?
|
Good news! Details:
Btw, I'll add some automated CI for multiple versions of windows/node/npm/electron. |
Maybe one more thing to be done, about the openssl, any idea? @liubiggun |
up vote for electron! |
i have succesfully build for nwjs and electron(without any error). However when i run the app, i get the following error: I've almost tried all of the development environments : I even tried to modify the source code. It takes a lot of time to solve the problem. but in the end i failed. Is there anyone who can help? |
@liubiggun do you still remember what we had done to the Windows7 PC? |
@1inus before @liubiggun replies. |
@fritx the same error, an annoying thing |
I think the mistake was caused by openssl static lib |
@fritx
2、config the LDFLAGS if your platform is win, I can give you more detail, thanks |
@lihang1870719 can you provide some details for windows platform? |
If run dependency walker on the node binary generated by electron-rebuild, it'll tell you that there are a LOT of dll's missing. Maybe it has something to do with Visual Studio? |
Is this the issue? In postinstall.js, you have
From this point on, everything happens under that directory:
Eventually you end up with a whole directory structure underneath the I tried to make a clone of your module to test, but my NPM knowledge isn't good enough and I couldn't get it to use my local copy. However this should be super easy to test. |
@alangrainger thanks for your point. It should work with the code, we tested it well. The strategy you mentioned was intended: It is probably due to, I thought, the sqlite3 version defined in package.json was a bit special, However, I'm not pretty sure now. And you are right! Probably we should move sqlite3 |
I have been testing all morning on multiple different configurations. On a fresh Electron boilerplate, with these exact versions, I could not replicate your success:
Note that I used 0.0.4 as there is no build target for 0.0.2. There are no errors during the build process, only the When I use just the Sqlite3 module (no win-cipher), the electron-rebuild process does successfully correct that error. I'm wondering if it's possible to use the DLL file from this project to compile Sqlite3 against? https://github.com/sqlitebrowser/sqlitebrowser/releases I have started to attempt it, but I'm not yet sure how to tell npm to use the DLL file. The command will be something like this:
|
@alangrainger thanks! I'll look into it soon. Btw, I recently find that electron-rebuild should be told the exact module name like:
|
I had such high hopes! Rebuild works:
But then run the app, and same issue:
Are you personally still able to get a successfully working install on a new boilerplate? |
@alangrainger - check your builds (node_sqlite3.node) for both node and electron with http://dependencywalker.com/, you should only see NODE.DLL is not found (icon - question mark inside yellow circle). If LIBEAY32.DLL is also marked as not found (most likely in electron build), you should copy SSL related dlls (libeay32.dll and libssl32.dll) to system32 folder then build again. It should resolve the issue. If not install VS2013. HTH. P.S. you can ignore some of the missing dlls for windows. |
Holy shit it worked!! I got the DLL files from DB Browser for SQLite Windows build, and copied them to System32, and it compiled just fine! Here are the DLLs for anyone else who needs them: https://drive.google.com/file/d/0BwEyNB4Ss8kjLWVDVHFCVkRLT2s/view?usp=sharing Environment:
Steps:
Note: I got this error while installing even though I have the package specified in my packages.json:
It did not however prevent the successful compilation and running of my app. Likely something needs to be fixed, but I'm not sure what. |
The error "The specified module could not be found" typically means that a dll file is missing, but unfortunately the error doesn't tell you which one. The Windows Process Monitor tool is useful to find which one is missing: Just filter for the I've created another fork that bundles that DLL with the module: https://github.com/journeyapps/node-sqlcipher |
I have succesfully downloaded and built the win32 x64 version of this module for Electron 1.6.1. However when i run the electron app, i get the following error:
The specified module could not be found: electron\app\node_modules\win-sqlcipher\node_modules\sqlite3\lib\binding\electron-v1.6-win32-x64\node_sqlite3.node
However I have confirmed that the module does actually exist in that path.
The text was updated successfully, but these errors were encountered: