Skip to content
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

Can't run winax with electron 13.1.4 #98

Closed
chpuget opened this issue Jun 28, 2021 · 8 comments
Closed

Can't run winax with electron 13.1.4 #98

chpuget opened this issue Jun 28, 2021 · 8 comments

Comments

@chpuget
Copy link

chpuget commented Jun 28, 2021

Hi,

I am using the latest winax version 3.1.5

I have upgraded to electron@latest which is currently 13.1.4 (https://www.electronjs.org/)

At runtime, I get error : ActiveXObject failed : The module '\?\C:......\node_modules\winax\build\Release\node_activex.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 83. This version of Node.js requires NODE_MODULE_VERSION 89. Please try re-compiling or re-installing the module (for instance, using npm rebuild or npm install).

Which is normal as I didn't rebuild for electron

Then I launch : npm rebuild winax --runtime=electron --target=13.1.0 --dist-url=https://electronjs.org/headers --build-from-source

But then I get error :
ActiveXObject failed : The module '\?\C:......\node_modules\winax\build\Release\node_activex.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 79. This version of Node.js requires NODE_MODULE_VERSION 89. Please try re-compiling or re-installing the module (for instance, using npm rebuild or npm install).

Do you see how to make it work ?

Thanks and regards

Chris

@durs
Copy link
Owner

durs commented Jun 29, 2021 via email

@chpuget
Copy link
Author

chpuget commented Jun 29, 2021

Thanks for your fast answer durs,

I have tried yesterday with many targets : 14x, 15.x, 16.x, ..., but none has a module version 89

Today, I tried this :

npm install winax --msvs_version=2017

"scripts": {
"execute": "electron .",
"rebuild": "electron-rebuild -f -w winax",
...
},

npm run rebuild

I get error :
⠙ Building module: winax, Completed: 1 win_delay_load_hook.cc
⠧ Building module: winax, Completed: 1 Creating library C:...\node_modules\winax\build\Release\node_act
ivex.lib and object C:...\node_modules\winax\build\Release\node_act
ivex.exp
disp.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class std::shared_ptr __thiscall v8::ArrayBuffer::GetBackingStore(void)" (_imp?GetBackingStore@ArrayBuffer@v8@@QAE?AV?$shared_pt
r@VBackingStore@v8@@@std@@xz) [C:...\node_modules\winax\build\node_ac
tivex.vcxproj]
C:...\node_modules\winax\build\Release\node_activex.node : fatal erro
r LNK1120: 1 unresolved externals [C:...\node_modules\winax\build\nod
e_activex.vcxproj]
✖ Rebuild Failed

An unhandled error occurred inside electron-rebuild
node-gyp failed to rebuild 'C:...\node_modules\winax'.
Error: C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\MSBuild.exe failed with exit code: 1

Error: node-gyp failed to rebuild 'C:...\node_modules\winax'.
Error: C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\MSBuild.exe failed with exit code: 1

at ModuleRebuilder.rebuildNodeGypModule (C:\...\node_modules\electron-rebuild\lib\src\module-rebuilder.js:193:19)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at async Rebuilder.rebuildModuleAt (C:\...\node_modules\electron-rebuild\lib\src\rebuild.js:190:9)
at async Rebuilder.rebuild (C:\...\node_modules\electron-rebuild\lib\src\rebuild.js:152:17)
at async C:\...\node_modules\electron-rebuild\lib\src\cli.js:146:9

Maybe it's because it's using VS2019 to rebuild (I have both 2017 and 2019 on my machine)

@Daniel-Userlane
Copy link
Contributor

Daniel-Userlane commented Jul 19, 2021

Can you retry this with 3.1.6?
For me this problem sometimes appeared and then disappeared again

3.1.5 introduced a way to build this repo as a library that broke on Electron but 3.1.6 should fix that

VS2019 works fine for me

@chpuget
Copy link
Author

chpuget commented Jul 21, 2021

Hi Daniel,

Can you please explain what you did exactly ?

I have the latest electron 13.1.7
{
node: '14.16.0',
v8: '9.1.269.36-electron.0',
uv: '1.40.0',
zlib: '1.2.11',
brotli: '1.0.9',
ares: '1.16.1',
modules: '89',
nghttp2: '1.41.0',
napi: '7',
llhttp: '2.1.3',
openssl: '1.1.1',
icu: '68.1',
unicode: '13.0',
electron: '13.1.7',
chrome: '91.0.4472.124'
}
On my side, I still have issues with the latest winax 3.1.6

  • using "rebuild": "electron-rebuild --msvs_version=2017 -f -w winax" or "rebuild": "electron-rebuild -f -w winax" (=VS2019) : compilation error as seen above
    "disp.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: class std::shared_ptr<class v8::Bac......"

  • using "rebuild2": "npm rebuild winax --runtime=electron --target=14.16.0 --dist-url=https://electronjs.org/headers --build-from-source --msvs_version=2017" or "rebuild2": "npm rebuild winax --runtime=electron --target=14.16.0 --dist-url=https://electronjs.org/headers --build-from-source" (=VS2019) : the build works but module version is 83 and not 89

Regards

@chpuget
Copy link
Author

chpuget commented Jul 21, 2021

Hi durs,

Any idea how to solve this issue ?
The version 3.1.4 2 months ago made it work with electron 12 : ec3d098
Any way to adapt it to electron 13 ?
Thanks for your help

Chris

@Daniel-Userlane
Copy link
Contributor

Interesting...
I'm currently testing it with Electron 11 only;
but I was able to reproduce your problem with electron 13.1.7.

Apparently these are related:
nodejs/nan#892
electron/electron#29893

@hrishabhkumar
Copy link

I am also getting the same error with the latest electron. Please let us know if there is any workaround or fix is coming.

@chpuget
Copy link
Author

chpuget commented Dec 16, 2021

thanks for the fix, and sorry for delay, I close the issue

@chpuget chpuget closed this as completed Dec 16, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants