The sender domain has a DMARC Reject/Quarantine policy which disallows
sending mailing list messages using the original "From" header.

To mitigate this problem, the original message has been wrapped
automatically by the mailing list software.
--- Begin Message ---
(resent as previous attempt didn't seem to get through)

Hi all,



The g++ version 11.1.1 of Fedora 34 defaults to g++17 and making the build of host package mklibs fail. See build error below.

Obviously, least intrusive fix is to set the C++ standard to g++14 or lower. However, on master the problem is not there due to an upgrade of mklibs to version 0.1.44 (among some other changes). This is done in commit 9437012b9ee4dc550e42665b71902cf885169100.

Guess we best cherry-pick that commit from master to upgrade mklibs to 0.1.44 as well. This commit was cleanly applied on top of openwrt-19.07 and the build went fine afterwards.

(build was for TP-Link Archer C7 v5 default config with ccache enabled if that matters)

Regards,

Bas.



make[3]: Entering directory '/home/bas/Workspace/openwrt-19.07/tools/mklibs' CFLAGS="-O2 -I/home/bas/Workspace/openwrt-19.07/staging_dir/host/include -I/home/bas/Workspace/openwrt-19.07/tools/mklibs/include" CPPFLAGS="-I/home/bas/Workspace/openwrt-19.07/staging_dir/host/include " CXXFLAGS="" LDFLAGS="-L/home/bas/Workspace/openwrt-19.07/staging_dir/host/lib " make -j1 -C /home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35 make[4]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35'
make  all-recursive
make[5]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35'
Making all in lib
make[6]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib'
Making all in mklibs
make[7]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib/mklibs'
Making all in utils
make[8]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib/mklibs/utils'
make[8]: Nothing to be done for 'all'.
make[8]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib/mklibs/utils' make[8]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib/mklibs'
make[8]: Nothing to be done for 'all-am'.
make[8]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib/mklibs' make[7]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib/mklibs' make[7]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib'
make[7]: Nothing to be done for 'all-am'.
make[7]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib' make[6]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/lib'
Making all in src
make[6]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/src'
Making all in mklibs-readelf
make[7]: Entering directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/src/mklibs-readelf' ccache g++ -DHAVE_CONFIG_H -I. -I../.. -I/home/bas/Workspace/openwrt-19.07/staging_dir/host/include -g -O2 -MT elf.o -MD -MP -MF .deps/elf.Tpo -c -o elf.o elf.cpp
In file included from elf_data.hpp:24,
                 from elf.cpp:21:
elf.hpp:52:56: error: ISO C++17 does not allow dynamic exception specifications 52 | const section &get_section(unsigned int i) const throw (std::out_of_range) { return *sections.at(i); };
      |                                                        ^~~~~
elf.hpp:62:47: error: ISO C++17 does not allow dynamic exception specifications 62 | static file *open(const char *filename) throw (std::bad_alloc, std::runtime_error);
      |                                               ^~~~~
elf.hpp:65:38: error: ISO C++17 does not allow dynamic exception specifications 65 | file(uint8_t *mem, size_t len) throw (std::bad_alloc) : mem(mem), len(len) { }
      |                                      ^~~~~
elf.hpp:68:52: error: ISO C++17 does not allow dynamic exception specifications 68 | static file *open_class(uint8_t *, size_t) throw (std::bad_alloc, std::runtime_error);
      |                                                    ^~~~~
elf.hpp:131:55: error: ISO C++17 does not allow dynamic exception specifications 131 | std::string get_string(uint32_t offset) const throw (std::bad_alloc)
      |                                                       ^~~~~
elf.hpp:266:39: error: ISO C++17 does not allow dynamic exception specifications
  266 |       std::string get_version() const throw (std::bad_alloc);
      |                                       ^~~~~
elf.hpp:267:44: error: ISO C++17 does not allow dynamic exception specifications 267 | std::string get_version_file() const throw (std::bad_alloc);
      |                                            ^~~~~
elf.hpp:269:44: error: ISO C++17 does not allow dynamic exception specifications 269 | std::string get_name_version() const throw (std::bad_alloc);
      |                                            ^~~~~
elf.hpp:308:29: error: ISO C++17 does not allow dynamic exception specifications
  308 |       version_requirement() throw (std::bad_alloc);
      |                             ^~~~~
In file included from elf.cpp:21:
elf_data.hpp:97:42: error: ISO C++17 does not allow dynamic exception specifications 97 | file_data(uint8_t *, size_t len) throw (std::bad_alloc, std::runtime_error);
      |                                          ^~~~~
elf_data.hpp:112:43: error: ISO C++17 does not allow dynamic exception specifications 112 | virtual void update(const file &) throw (std::bad_alloc);
      |                                           ^~~~~
elf_data.hpp:136:41: error: ISO C++17 does not allow dynamic exception specifications
  136 |         section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
      |                                         ^~~~~
elf_data.hpp:138:35: error: ISO C++17 does not allow dynamic exception specifications
  138 |         void update(const file &) throw (std::bad_alloc);
      |                                   ^~~~~
elf_data.hpp:150:41: error: ISO C++17 does not allow dynamic exception specifications
  150 |         section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
      |                                         ^~~~~
elf_data.hpp:152:35: error: ISO C++17 does not allow dynamic exception specifications
  152 |         void update(const file &) throw (std::bad_alloc);
      |                                   ^~~~~
elf_data.hpp:164:41: error: ISO C++17 does not allow dynamic exception specifications
  164 |         section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
      |                                         ^~~~~
elf_data.hpp:166:35: error: ISO C++17 does not allow dynamic exception specifications
  166 |         void update(const file &) throw (std::bad_alloc);
      |                                   ^~~~~
elf_data.hpp:178:41: error: ISO C++17 does not allow dynamic exception specifications
  178 |         section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
      |                                         ^~~~~
elf_data.hpp:180:35: error: ISO C++17 does not allow dynamic exception specifications
  180 |         void update(const file &) throw (std::bad_alloc);
      |                                   ^~~~~
elf_data.hpp:192:41: error: ISO C++17 does not allow dynamic exception specifications
  192 |         section_real(Shdr *, uint8_t *) throw (std::bad_alloc);
      |                                         ^~~~~
elf_data.hpp:223:42: error: ISO C++17 does not allow dynamic exception specifications
  223 |         segment_real (Phdr *, uint8_t *) throw (std::bad_alloc);
      |                                          ^~~~~
elf_data.hpp:235:71: error: ISO C++17 does not allow dynamic exception specifications 235 | void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
      |       ^~~~~
elf_data.hpp:247:71: error: ISO C++17 does not allow dynamic exception specifications 247 | void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
      |       ^~~~~
elf_data.hpp:248:62: error: ISO C++17 does not allow dynamic exception specifications 248 | virtual void update_version (const file &, uint16_t) throw (std::bad_alloc); | ^~~~~ elf_data.hpp:260:71: error: ISO C++17 does not allow dynamic exception specifications 260 | void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
      |       ^~~~~
elf_data.hpp:272:71: error: ISO C++17 does not allow dynamic exception specifications 272 | void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
      |       ^~~~~
elf_data.hpp:283:71: error: ISO C++17 does not allow dynamic exception specifications 283 | void update_string(const section_type<section_type_STRTAB> &) throw (std::bad_alloc);
      |       ^~~~~
elf.cpp:39:41: error: ISO C++17 does not allow dynamic exception specifications 39 | file *file::open (const char *filename) throw (std::bad_alloc, std::runtime_error)
      |                                         ^~~~~
elf.cpp:75:50: error: ISO C++17 does not allow dynamic exception specifications 75 | file *file::open_class(uint8_t *mem, size_t len) throw (std::bad_alloc, std::runtime_error)
      |                                                  ^~~~~
elf.cpp:89:63: error: ISO C++17 does not allow dynamic exception specifications 89 | file_data<_class, _data>::file_data(uint8_t *mem, size_t len) throw (std::bad_alloc, std::runtime_error) | ^~~~~ elf.cpp:191:60: error: ISO C++17 does not allow dynamic exception specifications 191 | void section_data<_class, _data>::update(const file &file) throw (std::bad_alloc)
      |                                                            ^~~~~
elf.cpp:205:93: error: ISO C++17 does not allow dynamic exception specifications 205 | section_real<_class, _data, section_type_DYNAMIC>::section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
      |                             ^~~~~
elf.cpp:222:82: error: ISO C++17 does not allow dynamic exception specifications 222 | void section_real<_class, _data, section_type_DYNAMIC>::update(const file &file) throw (std::bad_alloc)
      |                  ^~~~~
elf.cpp:244:92: error: ISO C++17 does not allow dynamic exception specifications 244 | section_real<_class, _data, section_type_DYNSYM>::section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
      |                            ^~~~~
elf.cpp:261:81: error: ISO C++17 does not allow dynamic exception specifications 261 | void section_real<_class, _data, section_type_DYNSYM>::update(const file &file) throw (std::bad_alloc)
      |                 ^~~~~
elf.cpp:286:96: error: ISO C++17 does not allow dynamic exception specifications 286 | section_real<_class, _data, section_type_GNU_VERDEF>::section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
      |                                ^~~~~
elf.cpp:308:85: error: ISO C++17 does not allow dynamic exception specifications 308 | void section_real<_class, _data, section_type_GNU_VERDEF>::update(const file &file) throw (std::bad_alloc)
      |                     ^~~~~
elf.cpp:334:42: error: ISO C++17 does not allow dynamic exception specifications
  334 | section_real(Shdr *header, uint8_t *mem) throw (std::bad_alloc)
      |                                          ^~~~~
elf.cpp:356:86: error: ISO C++17 does not allow dynamic exception specifications 356 | void section_real<_class, _data, section_type_GNU_VERNEED>::update(const file &file) throw (std::bad_alloc)
      |                      ^~~~~
elf.cpp:373:43: error: ISO C++17 does not allow dynamic exception specifications
  373 | section_real (Shdr *header, uint8_t *mem) throw (std::bad_alloc)
      |                                           ^~~~~
elf.cpp:400:93: error: ISO C++17 does not allow dynamic exception specifications 400 | segment_real<_class, _data, segment_type_INTERP>::segment_real (Phdr *header, uint8_t *mem) throw (std::bad_alloc)
      |                             ^~~~~
elf.cpp:429:99: error: ISO C++17 does not allow dynamic exception specifications 429 | void dynamic_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
      |                                   ^~~~~
elf.cpp:435:42: error: ISO C++17 does not allow dynamic exception specifications
  435 | std::string symbol::get_version () const throw (std::bad_alloc)
      |                                          ^~~~~
elf.cpp:445:47: error: ISO C++17 does not allow dynamic exception specifications 445 | std::string symbol::get_version_file () const throw (std::bad_alloc)
      |                                               ^~~~~
elf.cpp:453:47: error: ISO C++17 does not allow dynamic exception specifications 453 | std::string symbol::get_name_version () const throw (std::bad_alloc)
      |                                               ^~~~~
elf.cpp:478:98: error: ISO C++17 does not allow dynamic exception specifications 478 | void symbol_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
      |                                  ^~~~~
elf.cpp:484:83: error: ISO C++17 does not allow dynamic exception specifications 484 | void symbol_data<_class, _data>::update_version(const file &file, uint16_t index) throw (std::bad_alloc)
      |                   ^~~~~
elf.cpp:531:110: error: ISO C++17 does not allow dynamic exception specifications 531 | void version_definition_data<_class, _data>::update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
      |                                              ^~~~~
elf.cpp:537:44: error: ISO C++17 does not allow dynamic exception specifications 537 | version_requirement::version_requirement() throw (std::bad_alloc)
      |                                            ^~~~~
elf.cpp:561:65: error: ISO C++17 does not allow dynamic exception specifications 561 | update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
      | ^~~~~
elf.cpp:596:65: error: ISO C++17 does not allow dynamic exception specifications 596 | update_string(const section_type<section_type_STRTAB> &section) throw (std::bad_alloc)
      | ^~~~~
make[7]: *** [Makefile:387: elf.o] Error 1
make[7]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/src/mklibs-readelf'
make[6]: *** [Makefile:440: all-recursive] Error 1
make[6]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/src'
make[5]: *** [Makefile:364: all-recursive] Error 1
make[5]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35'
make[4]: *** [Makefile:305: all] Error 2
make[4]: Leaving directory '/home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35' make[3]: *** [Makefile:35: /home/bas/Workspace/openwrt-19.07/build_dir/host/mklibs-0.1.35/.built] Error 2 make[3]: Leaving directory '/home/bas/Workspace/openwrt-19.07/tools/mklibs'
time: tools/mklibs/compile#0.41#0.12#0.00
make[2]: *** [tools/Makefile:159: tools/mklibs/compile] Error 2
make[2]: Leaving directory '/home/bas/Workspace/openwrt-19.07'
make[1]: *** [tools/Makefile:155: /home/bas/Workspace/openwrt-19.07/staging_dir/target-mips_24kc_musl/stamp/.tools_compile_yynyynnyyyynyyyyynyynnyyyynyyyyyyyyyyyyyyynyynynyyyynnyyy] Error 2
make[1]: Leaving directory '/home/bas/Workspace/openwrt-19.07'
make: *** [/home/bas/Workspace/openwrt-19.07/include/toplevel.mk:227: world] Error 2


--- End Message ---
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to