lwahonen / node-ffi-napi

MIT License
13 stars 13 forks source link

node 18.20.2 builds break, works on 18.17.0 #8

Open Galkon opened 4 months ago

Galkon commented 4 months ago

node 18.20.2 yields this error:

node_modules/@lwahonen/ffi-napi install$ node-gyp-build
│ gyp info it worked if it ends with ok
│ gyp info using node-gyp@9.4.1
│ gyp info using node@18.20.2 | win32 | x64
│ gyp info find Python using Python version 3.6.0 found at "C:\Users\mdlbl\AppData\Local\Programs\Python\Python36-32\p
│ gyp info find VS using VS2019 (16.11.34729.46) found at:
│ gyp info find VS "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community"
│ gyp info find VS run with --verbose for detailed information
│ gyp info spawn C:\Users\mdlbl\AppData\Local\Programs\Python\Python36-32\python3.exe
│ gyp info spawn args [
│ gyp info spawn args   'C:\\Users\\mdlbl\\OneDrive\\Documents\\GitHub\\medal-electron\\node_modules\\node-gyp\\gyp\\g
│ gyp info spawn args   'binding.gyp',
│ gyp info spawn args   '-f',
│ gyp info spawn args   'msvs',
│ gyp info spawn args   '-I',
│ gyp info spawn args   'C:\\Users\\mdlbl\\OneDrive\\Documents\\GitHub\\medal-electron\\node_modules\\@lwahonen\\ffi-n
│ gyp info spawn args   '-I',
│ gyp info spawn args   'C:\\Users\\mdlbl\\OneDrive\\Documents\\GitHub\\medal-electron\\node_modules\\node-gyp\\addon.
│ gyp info spawn args   '-I',
│ gyp info spawn args   'C:\\Users\\mdlbl\\AppData\\Local\\node-gyp\\Cache\\18.20.2\\include\\node\\common.gypi',
│ gyp info spawn args   '-Dlibrary=shared_library',
│ gyp info spawn args   '-Dvisibility=default',
│ gyp info spawn args   '-Dnode_root_dir=C:\\Users\\mdlbl\\AppData\\Local\\node-gyp\\Cache\\18.20.2',
│ gyp info spawn args   '-Dnode_gyp_dir=C:\\Users\\mdlbl\\OneDrive\\Documents\\GitHub\\medal-electron\\node_modules\\n
│ gyp info spawn args   '-Dnode_lib_file=C:\\\\Users\\\\mdlbl\\\\AppData\\\\Local\\\\node-gyp\\\\Cache\\\\18.20.2\\\\<
│ gyp info spawn args   '-Dmodule_root_dir=C:\\Users\\mdlbl\\OneDrive\\Documents\\GitHub\\medal-electron\\node_modules
│ gyp info spawn args   '-Dnode_engine=v8',
│ gyp info spawn args   '--depth=.',
│ gyp info spawn args   '--no-parallel',
│ gyp info spawn args   '--generator-output',
│ gyp info spawn args   'C:\\Users\\mdlbl\\OneDrive\\Documents\\GitHub\\medal-electron\\node_modules\\@lwahonen\\ffi-n
│ gyp info spawn args   '-Goutput_dir=.'
│ gyp info spawn args ]
│ gyp info spawn C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\MSBuild.exe
│ gyp info spawn args [
│ gyp info spawn args   'build/binding.sln',
│ gyp info spawn args   '/clp:Verbosity=minimal',
│ gyp info spawn args   '/nologo',
│ gyp info spawn args   '/p:Configuration=Release;Platform=x64'
│ gyp info spawn args ]
│ Building the projects in this solution one at a time. To enable parallel build, please add the "-m" switch.
│   Preprocessing assembly file ..\..\..\deps\libffi\src\x86\win64_intel.preasm
│   win64_intel.preasm
│   Building assembly file Release\obj\ffi\\win64_intel.asm
│    Assembling: Release\obj\ffi\win64_intel.asm
│   prep_cif.c
│   types.c
│   raw_api.c
│   java_raw_api.c
│   closures.c
│   ffiw64.c
│   win_delay_load_hook.cc
│   ffi.vcxproj -> C:\Users\mdlbl\OneDrive\Documents\GitHub\medal-electron\node_modules\@lwahonen\ffi-napi\build\Relea
│   nothing.c
│   win_delay_load_hook.cc
│   nothing.vcxproj -> C:\Users\mdlbl\OneDrive\Documents\GitHub\medal-electron\node_modules\@lwahonen\ffi-napi\build\R
│   ffi.cc
│ C:\Users\mdlbl\OneDrive\Documents\GitHub\medal-electron\node_modules\get-uv-event-loop-napi-h\include\get-uv-event-l
│ C:\Users\mdlbl\OneDrive\Documents\GitHub\medal-electron\node_modules\get-uv-event-loop-napi-h\include\get-uv-event-l
│ gyp ERR! build error
│ gyp ERR! stack Error: `C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\MSBuild.exe
│ gyp ERR! stack     at ChildProcess.onExit (C:\Users\mdlbl\OneDrive\Documents\GitHub\medal-electron\node_modules\node
│ gyp ERR! stack     at ChildProcess.emit (node:events:517:28)
│ gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:292:12)
│ gyp ERR! System Windows_NT 10.0.22631
│ gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\mdlbl\\OneDrive\\Documents\\GitHub\\medal-electro
│ gyp ERR! cwd C:\Users\mdlbl\OneDrive\Documents\GitHub\medal-electron\node_modules\@lwahonen\ffi-napi
│ gyp ERR! node -v v18.20.2
│ gyp ERR! node-gyp -v v9.4.1
│ gyp ERR! not ok
└─ Failed in 5.7s
 ELIFECYCLE  Command failed with exit code 1.

In case anyone runs into this -- downgrading to node 18.17.0 fixes it. Not a great solution, but yeah.

Tunixer commented 3 months ago

according to the https://github.com/nodejs/node/issues/52240, this is because the breaking change of nodejs api.