[Pkg-electronics-devel] Bug#1037802: openfpgaloader: ftbfs with GCC-13

Matthias Klose doko at debian.org
Wed Jun 14 10:29:30 BST 2023


Package: src:openfpgaloader
Version: 0.10.0+git20230202-edea24f-1
Severity: normal
Tags: sid trixie
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-13

[This bug is targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-13/g++-13, but succeeds to build with gcc-12/g++-12. The
severity of this report will be raised before the trixie release.

The full build log can be found at:
http://qa-logs.debian.net/2023/05/22/logs/openfpgaloader_0.10.0+git20230202-edea24f-1_unstable_gccexp.log
The last lines of the build log are at the end of this report.

To build with GCC 13, either set CC=gcc-13 CXX=g++-13 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-13/porting_to.html

[...]
/<<PKGBUILDDIR>>/src/jtag.hpp:62:27: error: ‘uint32_t’ has not been declared
   62 |         bool insert_first(uint32_t device_id, uint16_t irlength);
      |                           ^~~~~~~~
/<<PKGBUILDDIR>>/src/jtag.hpp:62:47: error: ‘uint16_t’ has not been declared
   62 |         bool insert_first(uint32_t device_id, uint16_t irlength);
      |                                               ^~~~~~~~
/<<PKGBUILDDIR>>/src/jtag.hpp:108:51: error: ‘uint32_t’ has not been declared
  108 |                 const jtag_pins_conf_t *pin_conf, uint32_t clkHZ,
      |                                                   ^~~~~~~~
/<<PKGBUILDDIR>>/src/jtag.hpp:119:51: error: ‘uint32_t’ has not been declared
  119 |         bool search_and_insert_device_with_idcode(uint32_t idcode);
      |                                                   ^~~~~~~~
/<<PKGBUILDDIR>>/src/device.hpp:46:40: error: ‘uint32_t’ has not been declared
   46 |                 virtual bool dumpFlash(uint32_t base_addr, uint32_t len) {
      |                                        ^~~~~~~~
/<<PKGBUILDDIR>>/src/device.hpp:46:60: error: ‘uint32_t’ has not been declared
   46 |                 virtual bool dumpFlash(uint32_t base_addr, uint32_t len) {
      |                                                            ^~~~~~~~
/<<PKGBUILDDIR>>/src/device.hpp:49:44: error: ‘uint32_t’ has not been declared
   49 |                 virtual bool protect_flash(uint32_t len) = 0;
      |                                            ^~~~~~~~
In file included from /<<PKGBUILDDIR>>/src/efinix.hpp:12:
/<<PKGBUILDDIR>>/src/ftdiJtagMPSSE.hpp:31:13: error: ‘int FtdiJtagMPSSE::setClkFreq(uint32_t)’ marked ‘override’, but does not override
   31 |         int setClkFreq(uint32_t clkHZ) override;
      |             ^~~~~~~~~~
/<<PKGBUILDDIR>>/src/ftdiJtagMPSSE.hpp:33:18: error: ‘uint32_t FtdiJtagMPSSE::getClkFreq()’ marked ‘override’, but does not override
   33 |         uint32_t getClkFreq() override {return FTDIpp_MPSSE::getClkFreq();}
      |                  ^~~~~~~~~~
/<<PKGBUILDDIR>>/src/ftdiJtagMPSSE.hpp:36:13: error: ‘int FtdiJtagMPSSE::writeTMS(uint8_t*, uint32_t, bool)’ marked ‘override’, but does not override
   36 |         int writeTMS(uint8_t *tms, uint32_t len, bool flush_buffer) override;
      |             ^~~~~~~~
/<<PKGBUILDDIR>>/src/ftdiJtagMPSSE.hpp:38:13: error: ‘int FtdiJtagMPSSE::toggleClk(uint8_t, uint8_t, uint32_t)’ marked ‘override’, but does not override
   38 |         int toggleClk(uint8_t tms, uint8_t tdi, uint32_t clk_len) override;
      |             ^~~~~~~~~
/<<PKGBUILDDIR>>/src/ftdiJtagMPSSE.hpp:40:13: error: ‘int FtdiJtagMPSSE::writeTDI(uint8_t*, uint8_t*, uint32_t, bool)’ marked ‘override’, but does not override
   40 |         int writeTDI(uint8_t *tx, uint8_t *rx, uint32_t len, bool end) override;
      |             ^~~~~~~~
/<<PKGBUILDDIR>>/src/ftdiJtagMPSSE.hpp:50:22: error: ‘virtual bool FtdiJtagMPSSE::writeTMSTDI(const uint8_t*, const uint8_t*, uint8_t*, uint32_t)’ marked ‘override’, but does not override
   50 |         virtual bool writeTMSTDI(const uint8_t *tms, const uint8_t *tdi, uint8_t *tdo,
      |                      ^~~~~~~~~~~
/<<PKGBUILDDIR>>/src/efinix.hpp:29:22: error: ‘bool Efinix::dumpFlash(uint32_t, uint32_t)’ marked ‘override’, but does not override
   29 |                 bool dumpFlash(uint32_t base_addr, uint32_t len) override;
      |                      ^~~~~~~~~
/<<PKGBUILDDIR>>/src/efinix.hpp:30:30: error: ‘virtual bool Efinix::protect_flash(uint32_t)’ marked ‘override’, but does not override
   30 |                 virtual bool protect_flash(uint32_t len) override {
      |                              ^~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/efinix.cpp: In constructor ‘Efinix::Efinix(Jtag*, const std::string&, const std::string&, const std::string&, bool, int8_t)’:
/<<PKGBUILDDIR>>/src/efinix.cpp:72:46: error: ‘struct spi_pins_conf_t’ has no member named ‘cs_pin’
   72 |         _cs_pin = spi_board->spi_pins_config.cs_pin;
      |                                              ^~~~~~
/<<PKGBUILDDIR>>/src/efinix.cpp:73:31: error: ‘struct target_board_t’ has no member named ‘reset_pin’
   73 |         _rst_pin = spi_board->reset_pin;
      |                               ^~~~~~~~~
/<<PKGBUILDDIR>>/src/efinix.cpp:74:30: error: ‘struct target_board_t’ has no member named ‘oe_pin’
   74 |         _oe_pin = spi_board->oe_pin;
      |                              ^~~~~~
/<<PKGBUILDDIR>>/src/efinix.cpp:78:31: error: ‘class Jtag’ has no member named ‘getClkFreq’; did you mean ‘setClkFreq’?
   78 |                         jtag->getClkFreq(), verbose > 0);
      |                               ^~~~~~~~~~
      |                               setClkFreq
make[3]: *** [CMakeFiles/openFPGALoader.dir/build.make:177: CMakeFiles/openFPGALoader.dir/src/efinix.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:88: CMakeFiles/openFPGALoader.dir/all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:139: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j8 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:10: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-electronics-devel mailing list