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

libANGLE does not build on GCC 11 #214

Closed
angelsl opened this issue May 26, 2021 · 27 comments
Closed

libANGLE does not build on GCC 11 #214

angelsl opened this issue May 26, 2021 · 27 comments
Labels

Comments

@angelsl
Copy link

angelsl commented May 26, 2021

There is a missing

#include <limits>

in libANGLE's src/libANGLE/HandleAllocator.cpp.

Note that the upstream libANGLE does not have this issue because of #include <mutex> in src/common/debug.h, which indirectly includes limits. The (rather old) version of libANGLE used in this package does not have that.

Not including limits directly is bad practice by upstream, but in any case, this package is broken.

@dhritzkiv
Copy link
Member

Thanks for the details!

A while back (late 2017), I took a stab at updating headless-gl's referenced version of libANGLE, but I didn't get very far as I had build tool problems as well as problems in passing the test suite. I'd love to try again, with a more recent patch of ANGLE, but I unfortunately don't have the time (or skill) to effectively tackle the problem myself.

If you're willing, you can submit a patch, even if it's just to add the missing limits to HandleAllocator.cpp. Note that the currently referenced version of ANGLE is in this forked repo, so you'd have to fork that.

@Rush
Copy link

Rush commented Jun 30, 2021

I upgraded dependencies on openSUSE Tumbleweed and also started getting build errors:

npm ERR! In file included from ../angle/src/compiler/preprocessor/DirectiveParser.cpp:17:
npm ERR! ../angle/src/compiler/preprocessor/MacroExpander.h:86:10: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
npm ERR!    86 |     std::auto_ptr<Token> mReserveToken;
npm ERR!       |          ^~~~~~~~
npm ERR! In file included from /usr/include/c++/11/memory:76,
npm ERR!                  from ../angle/src/compiler/preprocessor/MacroExpander.h:11,
npm ERR!                  from ../angle/src/compiler/preprocessor/DirectiveParser.cpp:17:
npm ERR! /usr/include/c++/11/bits/unique_ptr.h:57:28: note: declared here
npm ERR!    57 |   template<typename> class auto_ptr;
npm ERR!       |                            ^~~~~~~~
npm ERR! In file included from ../angle/src/compiler/preprocessor/MacroExpander.cpp:7:
npm ERR! ../angle/src/compiler/preprocessor/MacroExpander.h:86:10: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
npm ERR!    86 |     std::auto_ptr<Token> mReserveToken;
npm ERR!       |          ^~~~~~~~
npm ERR! In file included from /usr/include/c++/11/memory:76,
npm ERR!                  from ../angle/src/compiler/preprocessor/MacroExpander.h:11,
npm ERR!                  from ../angle/src/compiler/preprocessor/MacroExpander.cpp:7:
npm ERR! /usr/include/c++/11/bits/unique_ptr.h:57:28: note: declared here
npm ERR!    57 |   template<typename> class auto_ptr;
npm ERR!       |                            ^~~~~~~~
npm ERR! In file included from ../angle/src/compiler/preprocessor/Preprocessor.cpp:14:
npm ERR! ../angle/src/compiler/preprocessor/MacroExpander.h:86:10: warning: ‘template<class> class std::auto_ptr’ is deprecated: use 'std::unique_ptr' instead [-Wdeprecated-declarations]
npm ERR!    86 |     std::auto_ptr<Token> mReserveToken;
npm ERR!       |          ^~~~~~~~
npm ERR! In file included from /usr/include/c++/11/memory:76,
npm ERR!                  from ../angle/src/compiler/preprocessor/MacroExpander.h:11,
npm ERR!                  from ../angle/src/compiler/preprocessor/Preprocessor.cpp:14:
npm ERR! /usr/include/c++/11/bits/unique_ptr.h:57:28: note: declared here
npm ERR!    57 |   template<typename> class auto_ptr;
npm ERR!       |                            ^~~~~~~~
npm ERR! ../angle/src/compiler/translator/ParseContext.cpp: In member function ‘bool TParseContext::binaryOpCommonCheck(TOperator, TIntermTyped*, TIntermTyped*, const TSourceLoc&)’:
npm ERR! ../angle/src/compiler/translator/ParseContext.cpp:3655:13: warning: this statement may fall through [-Wimplicit-fallthrough=]
npm ERR!  3655 |             if ((mShaderVersion < 300 || op == EOpAssign || op == EOpInitialize) &&
npm ERR!       |             ^~
npm ERR! ../angle/src/compiler/translator/ParseContext.cpp:3662:9: note: here
npm ERR!  3662 |         case EOpLessThan:
npm ERR!       |         ^~~~
npm ERR! ../angle/src/libANGLE/HandleAllocator.cpp: In constructor ‘gl::HandleAllocator::HandleAllocator()’:
npm ERR! ../angle/src/libANGLE/HandleAllocator.cpp:29:52: error: ‘numeric_limits’ is not a member of ‘std’
npm ERR!    29 |     mUnallocatedList.push_back(HandleRange(1, std::numeric_limits<GLuint>::max()));
npm ERR!       |                                                    ^~~~~~~~~~~~~~
npm ERR! ../angle/src/libANGLE/HandleAllocator.cpp:29:76: error: ‘::max’ has not been declared; did you mean ‘std::max’?
npm ERR!    29 |     mUnallocatedList.push_back(HandleRange(1, std::numeric_limits<GLuint>::max()));
npm ERR!       |                                                                            ^~~
npm ERR!       |                                                                            std::max
npm ERR! In file included from /usr/include/c++/11/algorithm:62,
npm ERR!                  from ../angle/src/libANGLE/HandleAllocator.cpp:12:
npm ERR! /usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
npm ERR!  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
npm ERR!       |     ^~~
npm ERR! ../angle/src/libANGLE/HandleAllocator.cpp:29:43: error: expected primary-expression before ‘(’ token
npm ERR!    29 |     mUnallocatedList.push_back(HandleRange(1, std::numeric_limits<GLuint>::max()));
npm ERR!       |                                           ^
npm ERR! ../angle/src/libANGLE/HandleAllocator.cpp:29:52: error: ‘numeric_limits’ is not a member of ‘std’
npm ERR!    29 |     mUnallocatedList.push_back(HandleRange(1, std::numeric_limits<GLuint>::max()));
npm ERR!       |                                                    ^~~~~~~~~~~~~~
npm ERR! ../angle/src/libANGLE/HandleAllocator.cpp:29:73: error: expected primary-expression before ‘>’ token
npm ERR!    29 |     mUnallocatedList.push_back(HandleRange(1, std::numeric_limits<GLuint>::max()));
npm ERR!       |                                                                         ^
npm ERR! ../angle/src/libANGLE/HandleAllocator.cpp:29:76: error: ‘::max’ has not been declared; did you mean ‘std::max’?
npm ERR!    29 |     mUnallocatedList.push_back(HandleRange(1, std::numeric_limits<GLuint>::max()));
npm ERR!       |                                                                            ^~~
npm ERR!       |                                                                            std::max
npm ERR! In file included from /usr/include/c++/11/algorithm:62,
npm ERR!                  from ../angle/src/libANGLE/HandleAllocator.cpp:12:
npm ERR! /usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
npm ERR!  3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
npm ERR!       |     ^~~
npm ERR! make: *** [angle/src/libANGLE.target.mk:239: Release/obj.target/libANGLE/angle/src/libANGLE/HandleAllocator.o] Error 1
npm ERR! make: *** Waiting for unfinished jobs...

@Rush
Copy link

Rush commented Jun 30, 2021

the workaround is:

CXX=g++-10 npm install

@dhritzkiv
Copy link
Member

@Rush Thanks for the extra detail and the workaround!

@angelsl
Copy link
Author

angelsl commented Jul 2, 2021

That workaround, of course, depends on having GCC 10 installed.

@Rush
Copy link

Rush commented Jul 2, 2021

Don't we all depend on things being installed? ;)

@angelsl
Copy link
Author

angelsl commented Jul 2, 2021

Yes, but depending on your distro, having multiple GCC versions installed can be troublesome.

@qexat
Copy link

qexat commented Dec 8, 2021

Cannot install gl at all, even with CXX=gcc++-10, it raises the same error (127) from angle/src/angle_common.target.mk:159 : Release/obj.target/angle_common/angle/src/common/Float16ToFloat32.o

micahscopes added a commit to micahscopes/angle that referenced this issue Jan 19, 2022
@micahscopes
Copy link

micahscopes commented Jan 19, 2022

I ran into this issue trying to use gpu.js, which has headless-gl as a dependency. I made a modified version of libANGLE as well as a fork of headless-gl that points to my libANGLE as a git submodule.

In my local headless-gl dev setup I'm able to get my fork to build just fine, but when I try to use my fork's git repo as a dependency i.e. using npm install https://github.com/micahscopes/headless-gl.git, it doesn't work.

The relevant error seems to be:

npm ERR! gyp: angle/src/angle.gyp not found (cwd: /home/micah/.npm/_cacache/tmp/git-clone9n6zvF) while loading dependencies of binding.gyp while trying to load binding.gyp

Is there something else I need to do besides updating the submodule to get this to work?

(Unfortunately, I'm unable to get the CXX=g++-10 npm install to work, I have the same error as @qexat.)

@micahscopes
Copy link

I also tried vendoring the libANGLE code into my fork of headless-gl, but that didn't work. But what did work was:

CXX=g++-9 npm install

😄

@qexat
Copy link

qexat commented Jan 20, 2022

I solved my issue when I was on Ubuntu 21.10 by running this command (may not work for everyone though):

sudo apt install -y build-essential g++-10 libxi-dev libxext-dev libpixman-1-dev libcairo2-dev libpango1.0-dev libjpeg8-dev libgif-dev libjpeg-dev librsvg2-dev mesa-common-dev

I also solved it on EndeavourOS but sadly my brain does not let me remember, I'll come back when I find out again

@Luxcium
Copy link

Luxcium commented Feb 5, 2022

I am now getting a different error message than previously noted in (gpujs/gpu.js#740)

Same as with CXX=gcc++-10

❯ CXX=g++-9 npm install gpu.js --save
npm WARN deprecated [email protected]: this library is no longer supported
npm WARN deprecated [email protected]: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm ERR! code 1
npm ERR! path $HOME/.local/src/deleteme-now/node_gpu/node_modules/gl
npm ERR! command failed
npm ERR! command sh -c prebuild-install || node-gyp rebuild
npm ERR! make : on entre dans le répertoire « $HOME/.local/src/deleteme-now/node_gpu/node_modules/gl/build »
npm ERR!   CXX(target) Release/obj.target/angle_common/angle/src/common/Float16ToFloat32.o
npm ERR! make : on quitte le répertoire « $HOME/.local/src/deleteme-now/node_gpu/node_modules/gl/build »
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using [email protected]
npm ERR! gyp info using [email protected] | linux | x64
npm ERR! gyp info find Python using Python version 3.9.7 found at "$HOME/anaconda3/bin/python3"
npm ERR! (node:129100) [DEP0150] DeprecationWarning: Setting process.config is deprecated. In the future the property will be read-only.
npm ERR! (Use `node --trace-deprecation ...` to show where the warning was created)
npm ERR! gyp info spawn $HOME/anaconda3/bin/python3
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args   '$HOME/.local/src/deleteme-now/node_gpu/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   'make',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '$HOME/.local/src/deleteme-now/node_gpu/node_modules/gl/build/config.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '$HOME/.local/src/deleteme-now/node_gpu/node_modules/node-gyp/addon.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '$HOME/.cache/node-gyp/17.4.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=$HOME/.cache/node-gyp/17.4.0',
npm ERR! gyp info spawn args   '-Dnode_gyp_dir=$HOME/.local/src/deleteme-now/node_gpu/node_modules/node-gyp',
npm ERR! gyp info spawn args   '-Dnode_lib_file=$HOME/.cache/node-gyp/17.4.0/<(target_arch)/node.lib',
npm ERR! gyp info spawn args   '-Dmodule_root_dir=$HOME/.local/src/deleteme-now/node_gpu/node_modules/gl',
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   'build',
npm ERR! gyp info spawn args   '-Goutput_dir=.'
npm ERR! gyp info spawn args ]
npm ERR! gyp info spawn make
npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm ERR! make: g++-9: Aucun fichier ou dossier de ce type
npm ERR! make: *** [angle/src/angle_common.target.mk:159 : Release/obj.target/angle_common/angle/src/common/Float16ToFloat32.o] Erreur 127
npm ERR! gyp ERR! build error 
npm ERR! gyp ERR! stack Error: `make` failed with exit code: 2
npm ERR! gyp ERR! stack     at ChildProcess.onExit ($HOME/.local/src/deleteme-now/node_gpu/node_modules/node-gyp/lib/build.js:194:23)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:520:28)
npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)
npm ERR! gyp ERR! System Linux 5.15.18-100.fc34.x86_64
npm ERR! gyp ERR! command "$HOME/.fnm/node-versions/v17.4.0/installation/bin/node" "$HOME/.local/src/deleteme-now/node_gpu/node_modules/.bin/node-gyp" "rebuild"
npm ERR! gyp ERR! cwd $HOME/.local/src/deleteme-now/node_gpu/node_modules/gl
npm ERR! gyp ERR! node -v v17.4.0
npm ERR! gyp ERR! node-gyp -v v7.1.2
npm ERR! gyp ERR! not ok

npm ERR! A complete log of this run can be found in:
npm ERR!     $HOME/.npm/_logs/2022-02-05T15_54_17_603Z-debug-0.log

@Luxcium
Copy link

Luxcium commented Feb 5, 2022

Can someone please tell me what I need to understand that I don't...

With my (broken) logic...

this package is downloaded 22 515 per week as 61 packages depend on it, they have a CI toolchain doing some testing (I imagine) and some packages (including this one) have new releases in the last days or months...

Why is it not working for me (and those above me who have commented on their problems) but not for anyone else... can someone explain to me what I need to understand to make it work ???

I hope I do not sound angry or sarcastic I am just asking questions (and trying to understand the irony of the situation)...

EDIT

After thinking for myself I thought installing the GCC/G++ 10 could be an alternative but I am unable to find how...
Building by myself is not an option now as it seems like reading the entry for Trivial in an antonym dictionary...

uname -a
Linux 5.15.18-100.fc34.x86_64 Fedora 34 x86_64 GNU/Linux

@angelsl
Copy link
Author

angelsl commented Feb 5, 2022

@Luxcium

they have a CI toolchain doing some testing (I imagine)

Their CI toolchain builds on Ubuntu 18.04, which is using an old enough GCC (and libstdc++, more importantly) version that the issue with the headers doesn't happen.

Why is it not working for me (and those above me who have commented on their problems) but not for anyone else...

Most likely, most users of this package are using Node.js LTS versions (12, 14 or 16), for which prebuilt native libraries are provided by the project. So they don't end up compiling locally.

@Luxcium
Copy link

Luxcium commented Feb 5, 2022

Most likely, most users of this package are using Node.js LTS versions (12, 14 or 16)

Ho wow 🤩 thanks I hope it could be useful to me I will try this later.

@dhritzkiv
Copy link
Member

@Luxcium you may find better luck by running a versions of node that is LTS (or is destined to soon become LTS), for example even numbered versions (e.g. 12, 14, 16). These will have binaries prebuilt, so installation is smoother and quicker.

Otherwise, the binary will have to be built from source each time you install, and the specifics of your environment (availability of certain build tools, locations of directories, headers, etc.) will determine if it builds or not. We can't test in every configuration, and have not found the right set of build tools to recommend that work across all variants of Linux.

@qexat had some success on his Ubuntu install. Perhaps some of those packages/tools are available in your distribution's package installer.

@Luxcium
Copy link

Luxcium commented Feb 5, 2022

@Luxcium you may find better luck by running a versions of node that is LTS

This information was new to me and I am going to take note of what you are telling me...

Where should I have learned that before (other than in forums or issues)... I am just continually learning (who is not)... But it's a relief 😅😮‍💨 to know that...

@angelsl
Copy link
Author

angelsl commented Feb 5, 2022

Yes, generally Node.js LTS versions tend to lead to fewer issues like this (although I would say you are unlikely to run into issues like this that often anyway).

@Luxcium

Where should I have learned that before (other than in forums or issues)...

Well, Node.js's download page does say this (note the "recommended for most users" under LTS), but (and forgive me for going on a tangent here) I feel like their versioning like this is a bit misleading, because if LTS is what is recommended, then that should be the stable version, and the "Current" version should be the Beta or next or whatever. (I'm sure they have their rationale for this current naming, so meh.)

image

@dhritzkiv

Otherwise, the binary will have to be built from source each time you install, and the specifics of your environment (availability of certain build tools, locations of directories, headers, etc.) will determine if it builds or not. We can't test in every configuration, and have not found the right set of build tools to recommend that work across all variants of Linux.

To be honest, it should not be that tricky to have a reliable build; C/C++ dependency management is pretty standard nowadays on Linux systems, with pkg-config etc. And like I said in my original post, the issue in this case is an issue with upstream missing an #include <limits>; it just happened to compile with older versions of libstdc++, because some other header that is included includes the missing header.

Maybe I should just send in a patch to add the missing line. I had intended to find time to try to update libANGLE to a more recent version from upstream, but that doesn't seem like it will happen anytime soon...

@Luxcium
Copy link

Luxcium commented Feb 5, 2022

an issue with upstream missing an #include

I am unsure about the "upstream" as I thought 💭 a fork was included in the project... how can I get unblocked say by installing myself a corrected version, since I am not fluent enough to send a PR to help everyone else I would be at least able to fix the problem for myself or anyone else who would be doing that same temporary workaround...

@angelsl
Copy link
Author

angelsl commented Feb 5, 2022

There, I've made the PR on https://github.com/mikolalysenko/angle: mikolalysenko/angle#4.

Not sure if @mikolalysenko is still active in this project though. @dhritzkiv, maybe it'll be better to make a fork of that repository in the stackgl organisation, and you can merge my commit over. Not sure. I'll leave that to you.

@dhritzkiv
Copy link
Member

@Luxcium good point about not being to find this information. I'll add it to the README later today

@dhritzkiv
Copy link
Member

@angelsl thanks for the patch. I think @mikolalysenko is not so active these days, but I can create a new repo and point this project at it. Creating a new fork will also make it just a little bit easier to update ANGLE (but as you mentioned, it's not super straightforward)

I'll review your patch later today.

W.r.t. node versions: we'd be more likely to support 'current' (non-LTS) node versions if we had more maintainers on the project. Right now, it's just me –even supporting only LTS versions is time consuming enough.

P.S. thanks for answering @Luxcium's question earlier, a few minutes before I managed to. :)

@qexat
Copy link

qexat commented Feb 5, 2022

I also had some success on my EndeavourOS install, but as I said I forgot how I figured out to.

Also, by the way, it's her* ^^

@dhritzkiv
Copy link
Member

@qexat apologies! I didn't check your profile before posting and foolishly assumed

@Luxcium
Copy link

Luxcium commented Feb 6, 2022

I am unable to know how to do it by myself (I had forked Angle applied the PR forked this repo applied the submodule)... but I realize I do not know how to build ANGLE ...

❯ npm run rebuild

> [email protected] rebuild
> node-gyp rebuild --verbose

gyp info it worked if it ends with ok
gyp verb cli [
gyp verb cli   '$HOME/.fnm/node-versions/v14.19.0/installation/bin/node',
gyp verb cli   '$HOME/.local/src/nodegpu/headless-gl/node_modules/.bin/node-gyp',
gyp verb cli   'rebuild',
gyp verb cli   '--verbose'
gyp verb cli ]
gyp info using [email protected]
gyp info using [email protected] | linux | x64
gyp verb command rebuild []
gyp verb command clean []
gyp verb clean removing "build" directory
gyp verb command configure []
gyp verb find Python Python is not set from command line or npm configuration
gyp verb find Python Python is not set from environment variable PYTHON
gyp verb find Python checking if "python3" can be used
gyp verb find Python - executing "python3" to get executable path
gyp verb find Python - executable path is "$HOME/anaconda3/bin/python3"
gyp verb find Python - executing "$HOME/anaconda3/bin/python3" to get version
gyp verb find Python - version is "3.9.7"
gyp info find Python using Python version 3.9.7 found at "$HOME/anaconda3/bin/python3"
gyp verb get node dir no --target version specified, falling back to host node version: 14.19.0
gyp verb command install [ '14.19.0' ]
gyp verb install input version string "14.19.0"
gyp verb install installing version: 14.19.0
gyp verb install --ensure was passed, so won't reinstall if already installed
gyp verb install version is already installed, need to check "installVersion"
gyp verb got "installVersion" 9
gyp verb needs "installVersion" 9
gyp verb install version is good
gyp verb get node dir target node version installed: 14.19.0
gyp verb build dir attempting to create "build" dir: $HOME/.local/src/nodegpu/headless-gl/build
gyp verb build dir "build" dir needed to be created? Yes
gyp verb build/config.gypi creating config file
gyp verb build/config.gypi writing out config file: $HOME/.local/src/nodegpu/headless-gl/build/config.gypi
gyp verb config.gypi checking for gypi file: $HOME/.local/src/nodegpu/headless-gl/config.gypi
gyp verb common.gypi checking for gypi file: $HOME/.local/src/nodegpu/headless-gl/common.gypi
gyp verb gyp gyp format was not specified; forcing "make"
gyp info spawn $HOME/anaconda3/bin/python3
gyp info spawn args [
gyp info spawn args   '$HOME/.local/src/nodegpu/headless-gl/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '$HOME/.local/src/nodegpu/headless-gl/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '$HOME/.local/src/nodegpu/headless-gl/node_modules/node-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '$HOME/.cache/node-gyp/14.19.0/include/node/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=$HOME/.cache/node-gyp/14.19.0',
gyp info spawn args   '-Dnode_gyp_dir=$HOME/.local/src/nodegpu/headless-gl/node_modules/node-gyp',
gyp info spawn args   '-Dnode_lib_file=$HOME/.cache/node-gyp/14.19.0/<(target_arch)/node.lib',
gyp info spawn args   '-Dmodule_root_dir=$HOME/.local/src/nodegpu/headless-gl',
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   'build',
gyp info spawn args   '-Goutput_dir=.'
gyp info spawn args ]
gyp: angle/build/standalone.gypi not found (cwd: $HOME/.local/src/nodegpu/headless-gl) while reading includes of angle/src/angle.gyp while loading dependencies of binding.gyp while trying to load binding.gyp
gyp ERR! configure error 
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit ($HOME/.local/src/nodegpu/headless-gl/node_modules/node-gyp/lib/configure.js:259:16)
gyp ERR! stack     at ChildProcess.emit (events.js:400:28)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:282:12)
gyp ERR! System Linux 5.15.18-100.fc34.x86_64
gyp ERR! command "$HOME/.fnm/node-versions/v14.19.0/installation/bin/node" "$HOME/.local/src/nodegpu/headless-gl/node_modules/.bin/node-gyp" "rebuild" "--verbose"
gyp ERR! cwd $HOME/.local/src/nodegpu/headless-gl
gyp ERR! node -v v14.19.0
gyp ERR! node-gyp -v v8.4.1
gyp ERR! not ok 

@angelsl
Copy link
Author

angelsl commented Jun 3, 2022

@dhritzkiv Have you had a chance to look at the patch?

@dhritzkiv
Copy link
Member

Closed in v5.0.3

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

No branches or pull requests

6 participants