nodejs 26.8.2 fails to build with clang/LLVM
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 1/5
- Temps estimé
- Moins d'une heure
- Accessibilité débutants
- 88/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Domaine
- build-system, operating-systems
Piste de recherche
Commencez par deps/LIEF/third-party/frozen/include/frozen/map.h, puis reproduisez le build de Node.js 26.8.2 sous Linux avec Clang. Vérifiez la dépendance à la bibliothèque standard indiquée dans l’erreur et confirmez que le build se termine correctement avec Clang sans les erreurs liées à std::less non défini.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Version
26.8.2
Platform
Linux (Gentoo with LLVM profile)
Subsystem
LIEF (or forzen)
What steps will reproduce the bug?
- Build nodejs version 26.8.2 with clang
- Observe failure
How often does it reproduce? Is there a required condition?
Always while building with clang
What is the expected behavior? Why is that the expected behavior?
Successful build with clang
What do you see instead?
Build failure while building with Clang
A snippet from the build log:
...
In file included from ../../deps/LIEF/src/platforms/android/version.cpp:17:
In file included from ../../deps/LIEF/src/frozen.hpp:22:
../../deps/LIEF/third-party/frozen/include/frozen/map.h:40:20: error: implicit instantiation of undefined template 'std::less<LIEF::Android::ANDROID_VERSIONS>'
40 | Comparator const comparator_;
| ^
../../deps/LIEF/third-party/frozen/include/frozen/map.h:75:29: note: in instantiation of template class 'frozen::impl::CompareKey<std::less<LIEF::Android::ANDROID_VERSIONS>>' requested here
75 | impl::CompareKey<Compare> less_than_;
| ^
../../deps/LIEF/src/platforms/android/version.cpp:22:47: note: in instantiation of template class 'frozen::map<LIEF::Android::ANDROID_VERSIONS, const char *, 8>' requested here
22 | CONST_MAP(ANDROID_VERSIONS, const char*, 8) version2code {
| ^
/usr/include/c++/v1/__fwd/functional.h:25:8: note: template is declared here
25 | struct less;
| ^
In file included from ../../deps/LIEF/src/platforms/android/version.cpp:17:
In file included from ../../deps/LIEF/src/frozen.hpp:22:
../../deps/LIEF/third-party/frozen/include/frozen/map.h:110:20: error: implicit instantiation of undefined template 'std::less<LIEF::Android::ANDROID_VERSIONS>'
110 | : map{items, Compare{}} {}
| ^
../../deps/LIEF/src/platforms/android/version.cpp:22:47: note: in instantiation of member function 'frozen::map<LIEF::Android::ANDROID_VERSIONS, const char *, 8>::map' requested here
22 | CONST_MAP(ANDROID_VERSIONS, const char*, 8) version2code {
| ^
/usr/include/c++/v1/__fwd/functional.h:25:8: note: template is declared here
25 | struct less;
| ^
../../deps/LIEF/src/platforms/android/version.cpp:22:47: error: constexpr variable 'version2code' must be initialized by a constant expression
22 | CONST_MAP(ANDROID_VERSIONS, const char*, 8) version2code {
...
Additional information
I think this is due to stricter include requirements on clang
I was able to build by adding #include <functional> in deps/LIEF/third-party/frozen/include/frozen/map.h
- Langage dominant
- JavaScript
- Étoiles
- 122k
- Forks
- 37.4k
- Merge moyen
- 4 j 3 h
- PR mergées (30 j)
- 272
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de nodejs/node
-
doc
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
-
feature request
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
-
stale
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Toutes les issues de nodejs/node
Issues similaires
-
code-quality refactoring
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
langchain-ai/deepagents#6450 ·
-
optimization optimization:agents-md-curator
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
githubnext/gh-aw-cao#13143 ·
-
status: needs triage
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100