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

Falied to build against node 19 #2144

Closed
1 task done
243083df opened this issue Oct 22, 2022 · 7 comments
Closed
1 task done

Falied to build against node 19 #2144

243083df opened this issue Oct 22, 2022 · 7 comments

Comments

@243083df
Copy link

243083df commented Oct 22, 2022

Seems like v8 splitted header v8/v8@ec06bb6#diff-3cf9b9e7fb55802b0dd4314b6cafef311a4fa2e0c9739b34abc504b8ecc97f29
And it cant find AccessorSignature in v8 https://github.com/Automattic/node-canvas/blob/master/src/Util.h#L26

Issue or Feature

Steps to Reproduce

npm i canvas

Log

PS C:\projects\manga> npm i canvas
npm ERR! code 1
npm ERR! path C:\projects\manga\node_modules\canvas
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node-pre-gyp install --fallback-to-build --update-binary
npm ERR! Building the projects in this solution one at a time. To enable parallel build, please add the "-m" switch.
npm ERR!   Backend.cc
npm ERR!   ImageBackend.cc
npm ERR!   PdfBackend.cc
npm ERR! C:\GTK\include\glib-2.0\glib\gutils.h(360,12): warning C5033: "register" ����� �� ���� �����ন����� ����ᮬ �࠭����. [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR!   SvgBackend.cc
npm ERR! C:\GTK\include\glib-2.0\glib\gutils.h(360,12): warning C5033: "register" ����� �� ���� �����ন����� ����ᮬ �࠭����. [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR!   BMPParser.cc
npm ERR!   Backends.cc
npm ERR! C:\GTK\include\glib-2.0\glib\gutils.h(360,12): warning C5033: "register" ����� �� ���� �����ন����� ����ᮬ �࠭����. [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR!   Canvas.cc
npm ERR! C:\GTK\include\glib-2.0\glib\gutils.h(360,12): warning C5033: "register" ����� �� ���� �����ন����� ����ᮬ �࠭����. [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR! C:\projects\manga\node_modules\canvas\src\Util.h(26,7): error C2039: "AccessorSignature": �� ���� 童��� "v8". [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR! C:\Users\sergey\AppData\Local\node-gyp\Cache\19.0.0\include\node\v8.h(71): message : �. ������� "v8" [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR! C:\projects\manga\node_modules\canvas\src\Util.h(26,7): error C3083: AccessorSignature: ᨬ��� ᫥�� �� "::" ������ �।�⠢���� ⨯ [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR! C:\projects\manga\node_modules\canvas\src\Util.h(26,26): error C2039: "New": �� ���� 童��� "v8". [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR! C:\Users\sergey\AppData\Local\node-gyp\Cache\19.0.0\include\node\v8.h(71): message : �. ������� "v8" [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR! C:\projects\manga\node_modules\canvas\src\Util.h(26,29): error C3861: New: �����䨪��� �� ������ [C:\projects\manga\node_modules\canvas\build\canvas.vcxproj]
npm ERR! Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\sergey\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --update-binary --module=C:\projects\manga\node_modules\canvas\build\Release\canvas.node --module_name=canvas --module_path=C:\projects\manga\node_modules\canvas\build\Release --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v111' (1)
npm ERR! node-pre-gyp info it worked if it ends with ok
npm ERR! node-pre-gyp info using node-pre-gyp@1.0.10
npm ERR! node-pre-gyp info using node@19.0.0 | win32 | x64
npm ERR! node-pre-gyp http GET https://github.com/Automattic/node-canvas/releases/download/v2.10.1/canvas-v2.10.1-node-v111-win32-unknown-x64.tar.gz
npm ERR! node-pre-gyp ERR! install response status 404 Not Found on https://github.com/Automattic/node-canvas/releases/download/v2.10.1/canvas-v2.10.1-node-v111-win32-unknown-x64.tar.gz
npm ERR! node-pre-gyp WARN Pre-built binaries not installable for canvas@2.10.1 and node@19.0.0 (node-v111 ABI, unknown) (falling back to source compile with node-gyp)
npm ERR! node-pre-gyp WARN Hit error response status 404 Not Found on https://github.com/Automattic/node-canvas/releases/download/v2.10.1/canvas-v2.10.1-node-v111-win32-unknown-x64.tar.gz
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@9.1.0
npm ERR! gyp info using node@19.0.0 | win32 | x64
npm ERR! gyp info ok
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@9.1.0
npm ERR! gyp info using node@19.0.0 | win32 | x64
npm ERR! gyp info find Python using Python version 3.9.0 found at "C:\Users\sergey\AppData\Local\Programs\Python\Python39\python.exe"
npm ERR! gyp info find VS using VS2022 (17.1.32414.318) found at:
npm ERR! gyp info find VS "C:\Program Files\Microsoft Visual Studio\2022\Community"
npm ERR! gyp info find VS run with --verbose for detailed information
npm ERR! gyp info spawn C:\Users\sergey\AppData\Local\Programs\Python\Python39\python.exe
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args   'C:\\Users\\sergey\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\gyp\\gyp_main.py',
npm ERR! gyp info spawn args   'binding.gyp',
npm ERR! gyp info spawn args   '-f',
npm ERR! gyp info spawn args   'msvs',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   'C:\\projects\\manga\\node_modules\\canvas\\build\\config.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   'C:\\Users\\sergey\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\addon.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   'C:\\Users\\sergey\\AppData\\Local\\node-gyp\\Cache\\19.0.0\\include\\node\\common.gypi',
npm ERR! gyp info spawn args   '-Dlibrary=shared_library',
npm ERR! gyp info spawn args   '-Dvisibility=default',
npm ERR! gyp info spawn args   '-Dnode_root_dir=C:\\Users\\sergey\\AppData\\Local\\node-gyp\\Cache\\19.0.0',
npm ERR! gyp info spawn args   '-Dnode_gyp_dir=C:\\Users\\sergey\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp',
npm ERR! gyp info spawn args   '-Dnode_lib_file=C:\\\\Users\\\\sergey\\\\AppData\\\\Local\\\\node-gyp\\\\Cache\\\\19.0.0\\\\<(target_arch)\\\\node.lib',
npm ERR! gyp info spawn args   '-Dmodule_root_dir=C:\\projects\\manga\\node_modules\\canvas',
npm ERR! gyp info spawn args   '-Dnode_engine=v8',
npm ERR! gyp info spawn args   '--depth=.',
npm ERR! gyp info spawn args   '--no-parallel',
npm ERR! gyp info spawn args   '--generator-output',
npm ERR! gyp info spawn args   'C:\\projects\\manga\\node_modules\\canvas\\build',
npm ERR! gyp info spawn args   '-Goutput_dir=.'
npm ERR! gyp info spawn args ]
npm ERR! gyp info ok
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@9.1.0
npm ERR! gyp info using node@19.0.0 | win32 | x64
npm ERR! gyp info spawn C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args   'build/binding.sln',
npm ERR! gyp info spawn args   '/clp:Verbosity=minimal',
npm ERR! gyp info spawn args   '/nologo',
npm ERR! gyp info spawn args   '/p:Configuration=Release;Platform=x64'
npm ERR! gyp info spawn args ]
npm ERR! gyp ERR! build error
npm ERR! gyp ERR! stack Error: `C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe` failed with exit code: 1
npm ERR! gyp ERR! stack     at ChildProcess.onExit (C:\Users\sergey\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:201:23)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:513:28)
npm ERR! gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:293:12)
npm ERR! gyp ERR! System Windows_NT 10.0.22000
npm ERR! gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\sergey\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "build" "--fallback-to-build" "--update-binary" "--module=C:\\projects\\manga\\node_modules\\canvas\\build\\Release\\canvas.node" "--module_name=canvas" "--module_path=C:\\projects\\manga\\node_modules\\canvas\\build\\Release" "--napi_version=8" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v111"
npm ERR! gyp ERR! cwd C:\projects\manga\node_modules\canvas
npm ERR! gyp ERR! node -v v19.0.0
npm ERR! gyp ERR! node-gyp -v v9.1.0
npm ERR! gyp ERR! not ok
npm ERR! node-pre-gyp ERR! build error
npm ERR! node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\Users\sergey\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --update-binary --module=C:\projects\manga\node_modules\canvas\build\Release\canvas.node --module_name=canvas --module_path=C:\projects\manga\node_modules\canvas\build\Release --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v111' (1)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (C:\projects\manga\node_modules\@mapbox\node-pre-gyp\lib\util\compile.js:89:23)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.emit (node:events:513:28)
npm ERR! node-pre-gyp ERR! stack     at maybeClose (node:internal/child_process:1098:16)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:304:5)
npm ERR! node-pre-gyp ERR! System Windows_NT 10.0.22000
npm ERR! node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\projects\\manga\\node_modules\\@mapbox\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build" "--update-binary"
npm ERR! node-pre-gyp ERR! cwd C:\projects\manga\node_modules\canvas
npm ERR! node-pre-gyp ERR! node -v v19.0.0
npm ERR! node-pre-gyp ERR! node-pre-gyp -v v1.0.10
npm ERR! node-pre-gyp ERR! not ok

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\sergey\AppData\Local\npm-cache\_logs\2022-10-22T08_33_49_731Z-debug-0.log

Your Environment

  • Version of node-canvas 2.10.1
  • Environment node 19.0.0 windows 11
@243083df
Copy link
Author

Oh no, seems like fix problem

		v8::None
		#if (NODE_MAJOR_VERSION < 19) 
			, v8::AccessorSignature::New(v8::Isolate::GetCurrent(), ctor)
		#endif

@Grothesk242
Copy link

I think I may have a similar issue, abeit running arm64 linux .
How / where did you fix the AccessorSignature?

@243083df
Copy link
Author

@Grothesk242 Right here https://github.com/Automattic/node-canvas/blob/master/src/Util.h#L26
They deleted AccessorSignature from v8 and seems like Nan dont need signature in Nan::SetAccessor for node 16 and above

nodejs/nan#943

@zbjornson
Copy link
Collaborator

This will be fixed in #2133.

@fuchunhui
Copy link

when will the next version be released? ☺️

@zbjornson
Copy link
Collaborator

node-canvas v2.10.2 is now published with support for Node 18 and 19.

@rotu
Copy link

rotu commented Dec 10, 2022

@zbjornson I needed additional changes to make gl build cleanly: stackgl/headless-gl#243

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants