Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Error when installing

Open
#7,909 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
arch-linux, cmake, cpp, linux

Research direction

Start by reproducing the Arch Linux build with cmake . && make, focusing on the diagnostics for src/passes/Strip.cpp and the enabled warning flags. Determine what change is needed so this configuration completes without treating the reported warning as an error, then verify that the build succeeds.

Written by the indexing model from the issue text.

Description

when installing using cmake on arch linux, i get this error
`[sypherrd@inferno binaryen]$ cmake . && make
-- No build type selected, default to Release
-- Building with -fno-omit-frame-pointer
-- Building with -fno-rtti
-- Building with -fPIC
-- Building with -UNDEBUG
-- Building with -DBUILD_LLVM_DWARF
-- Building with -Wall
-- Building with -Werror
-- Building with -Wextra
-- Building with -Wno-unused-parameter
-- Building with -Wno-dangling-pointer
-- Building with -Wno-implicit-int-float-conversion
-- Building with -Wno-unknown-warning-option
-- Building with -Wswitch
-- Building with -Wimplicit-fallthrough
-- Building with -Wnon-virtual-dtor
-- Building libbinaryen as shared library.
-- Linking with -Bsymbolic
-- Configuring done (0.1s)
-- Generating done (0.0s)
-- Build files have been written to: /home/sypherrd/binaryen
[ 18%] Built target llvm_dwarf
[ 19%] Building CXX object CMakeFiles/binaryen.dir/src/passes/Strip.cpp.o
In file included from /usr/include/c++/15.2.1/functional:61,
from /home/sypherrd/binaryen/src/passes/Strip.cpp:22:
In copy constructor ‘std::function<_Res(_ArgTypes ...)>::function(const std::function<_Res(_ArgTypes ...)>&) [with _Res = bool; _ArgTypes = {wasm::CustomSection&}]’,
inlined from ‘wasm::Strip::Strip(Decider)’ at /home/sypherrd/binaryen/src/passes/Strip.cpp:37:28,
inlined from ‘wasm::Pass* wasm::createStripDebugPass()’ at /home/sypherrd/binaryen/src/passes/Strip.cpp:62:4:
/usr/include/c++/15.2.1/bits/std_function.h:393:17: error: ‘’ may be used uninitialized [-Werror=maybe-uninitialized]
393 | __x._M_manager(_M_functor, __x._M_functor, __clone_functor);
| ~~~~^~~~~~~~~~
/usr/include/c++/15.2.1/bits/std_function.h: In function ‘wasm::Pass* wasm::createStripDebugPass()’:
/usr/include/c++/15.2.1/bits/std_function.h:269:7: note: by argument 2 of type ‘const std::_Any_data&’ to ‘static bool std::_Function_handler<_Res(_ArgTypes ...), _Functor>::_M_manager(std::_Any_data&, const std::_Any_data&, std::_Manager_operation) [with _Res = bool; _Functor = wasm::createStripDebugPass()::<lambda(const wasm::CustomSection&)>; _ArgTypes = {wasm::CustomSection&}]’ declared here
269 | _M_manager(_Any_data& __dest, const _Any_data& __source,
| ^~~~~~~~~~
/home/sypherrd/binaryen/src/passes/Strip.cpp:58:20: note: ‘’ declared here
58 | return new Strip([&](const CustomSection& curr) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
59 | return curr.name == BinaryConsts::CustomSections::Name ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
60 | curr.name == BinaryConsts::CustomSections::SourceMapUrl ||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
61 | curr.name.find(".debug") == 0 || curr.name.find("reloc..debug") == 0;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
62 | });
| ~
In copy constructor ‘std::function<_Res(_ArgTypes ...)>::function(const std::function<_Res(_ArgTypes ...)>&) [with _Res = bool; _ArgTypes = {wasm::CustomSection&}]’,
inlined from ‘wasm::Strip::Strip(Decider)’ at /home/sypherrd/binaryen/src/passes/Strip.cpp:37:28,
inlined from ‘wasm::Pass* wasm::createStripDWARFPass()’ at /home/sypherrd/binaryen/src/passes/Strip.cpp:68:4:
/usr/include/c++/15.2.1/bits/std_function.h:393:17: error: ‘’ may be used uninitialized [-Werror=maybe-uninitialized]
393 | __x._M_manager(_M_functor, __x._M_functor, __clone_functor);
| ~~~~^~~~~~~~~~
/usr/include/c++/15.2.1/bits/std_function.h: In function ‘wasm::Pass* wasm::createStripDWARFPass()’:
/usr/include/c++/15.2.1/bits/std_function.h:269:7: note: by argument 2 of type ‘const std::_Any_data&’ to ‘static bool std::_Function_handler<_Res(_ArgTypes ...), _Functor>::_M_manager(std::_Any_data&, const std::_Any_data&, std::_Manager_operation) [with _Res = bool; _Functor = wasm::createStripDWARFPass()::<lambda(const wasm::CustomSection&)>; _ArgTypes = {wasm::CustomSection&}]’ declared here
269 | _M_manager(_Any_data& __dest, const _Any_data& __source,
| ^~~~~~~~~~
/home/sypherrd/binaryen/src/passes/Strip.cpp:66:20: note: ‘’ declared here
66 | return new Strip([&](const CustomSection& curr) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
67 | return curr.name.find(".debug") == 0 || curr.name.find("reloc..debug") == 0;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
68 | });
| ~
In copy constructor ‘std::function<_Res(_ArgTypes ...)>::function(const std::function<_Res(_ArgTypes ...)>&) [with _Res = bool; _ArgTypes = {wasm::CustomSection&}]’,
inlined from ‘wasm::Strip::Strip(Decider)’ at /home/sypherrd/binaryen/src/passes/Strip.cpp:37:28,
inlined from ‘wasm::Pass* wasm::createStripProducersPass()’ at /home/sypherrd/binaryen/src/passes/Strip.cpp:74:4:
/usr/include/c++/15.2.1/bits/std_function.h:393:17: error: ‘’ may be used uninitialized [-Werror=maybe-uninitialized]
393 | __x._M_manager(_M_functor, __x._M_functor, __clone_functor);
| ~~~~^~~~~~~~~~
/usr/include/c++/15.2.1/bits/std_function.h: In function ‘wasm::Pass* wasm::createStripProducersPass()’:
/usr/include/c++/15.2.1/bits/std_function.h:269:7: note: by argument 2 of type ‘const std::_Any_data&’ to ‘static bool std::_Function_handler<_Res(_ArgTypes ...), _Functor>::_M_manager(std::_Any_data&, const std::_Any_data&, std::_Manager_operation) [with _Res = bool; _Functor = wasm::createStripProducersPass()::<lambda(const wasm::CustomSection&)>; _ArgTypes = {wasm::CustomSection&}]’ declared here
269 | _M_manager(_Any_data& __dest, const _Any_data& __source,
| ^~~~~~~~~~
/home/sypherrd/binaryen/src/passes/Strip.cpp:72:20: note: ‘’ declared here
72 | return new Strip([&](const CustomSection& curr) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
73 | return curr.name == BinaryConsts::CustomSections::Producers;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
74 | });
| ~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-unknown-warning-option’ may have been intended to silence earlier diagnostics
cc1plus: note: unrecognized command-line option ‘-Wno-implicit-int-float-conversion’ may have been intended to silence earlier diagnostics
cc1plus: all warnings being treated as errors
make[2]: *** [CMakeFiles/binaryen.dir/build.make:1745: CMakeFiles/binaryen.dir/src/passes/Strip.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:508: CMakeFiles/binaryen.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
[sypherrd@inferno binaryen]$

`

any help would be appreciated, thanks!

Dominant language
WebAssembly
Stars
8.6k
Forks
885
Avg merge
2d 4h
Merged PRs (30d)
77

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from WebAssembly/binaryen

All issues in WebAssembly/binaryen

Similar issues

More Build System issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.