我的目标是为Mac创建一个发行版,为Windows创建另一个发行版。我想从Mac创建这两个发行版。目前,我的Mac发行版效果很好。
但是对于Windows发行版,sqlite3模块仍然存在问题。
我的应用程序使用的唯一本机模块是sqlite3。
我真的不知道该怎么办才能最终使我的应用程序在Windows上正常工作。我不想在Windows计算机上编译我的代码。我只想在Mac上编译代码。
node-pre-gyp install --directory=./node_modules/sqlite3 --target_platform=win32 --target_arch=x64 --target=12.2.0
node-pre-gyp WARN Using request for node-pre-gyp https download
Warning: node-pre-gyp could not find exact match for 12.2.0
Warning: but node-pre-gyp successfully choose 12.0.0 as ABI compatible target
Warning: node-pre-gyp could not find exact match for 12.2.0
Warning: but node-pre-gyp successfully choose 12.0.0 as ABI compatible target
[sqlite3] Success: "/Users/Flooder/Programmes/electron/c4/node_modules/sqlite3/lib/binding/node-v72-win32-x64/node_sqlite3.node" is installed via remote
我得到一个新目录:./node_modules/sqlite3/lib/binding/node-v72-win32-x64
我重命名此新目录,用于:./node_modules/sqlite3/lib/binding/electron-v5.0-win32-x64
未捕获的异常: 错误:模块D:\ c4 \ resources \ app \ node_modules \ sqlite3 \ lib \ binding \ electron-v5.0-win32-x64 \ node_sqlite3.node是使用NODE_MODULE 72针对另一个Node.js版本编译的。 Node.js要求使用NODE_MODULE_VERSION70。请尝试重新编译或重新安装该模块(例如,使用“ npm rebuild”或“ npm install”)。
好几个星期以来,我一直困扰着这个问题...
真的可以从Mac上为Windows编译sqlite3模块吗?
node-pre-gyp是否是正确的解决方案?怎么样?
答案 0 :(得分:0)
最后,这是我的解决方案:
现在,Windows的新编译版本可在Win机器上使用!