Bug#1071307: fte: FTBFS: /usr/include/string.h:506:15: error: conflicting declaration of ‘size_t strlcpy(char*, const char*, size_t)’ with ‘C’ linkage
Package: src:fte
Version: 0.50.2b6-20110708-5
Severity: serious
Tags: ftbfs
Dear maintainer:
During a rebuild of all packages in unstable, your package failed to build:
--------------------------------------------------------------------------------
[...]
debian/rules build
dh build
dh_update_autotools_config
dh_autoreconf
dh_auto_configure
debian/rules override_dh_auto_build
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_build -D src -- -f fte-unix.mak
cd src && make -j2 "INSTALL=install --strip-program=true" -f fte-unix.mak
make[2]: Entering directory '/<<PKGBUILDDIR>>/src'
g++ -c cfte.cpp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wpointer-arith -Wconversion -Wwrite-strings -Winline -g -I/usr/include/qt3 -I/usr/lib64/qt-3.3/include -I/usr/include/slang -DUNIX -DLINUX
g++ -c s_files.cpp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wpointer-arith -Wconversion -Wwrite-strings -Winline -g -I/usr/include/qt3 -I/usr/lib64/qt-3.3/include -I/usr/include/slang -DUNIX -DLINUX
g++ -c s_string.cpp -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wpointer-arith -Wconversion -Wwrite-strings -Winline -g -I/usr/include/qt3 -I/usr/lib64/qt-3.3/include -I/usr/include/slang -DUNIX -DLINUX
In file included from s_string.cpp:3:
/usr/include/string.h:506:15: error: conflicting declaration of ‘size_t strlcpy(char*, const char*, size_t)’ with ‘C’ linkage
506 | extern size_t strlcpy (char *__restrict __dest,
| ^~~~~~~
In file included from s_string.cpp:1:
s_string.h:10:8: note: previous declaration with ‘C++’ linkage
10 | size_t strlcpy(char *dst, const char *src, size_t size);
| ^~~~~~~
/usr/include/string.h:506:15: error: declaration of ‘size_t strlcpy(char*, const char*, size_t) noexcept’ has a different exception specifier
506 | extern size_t strlcpy (char *__restrict __dest,
| ^~~~~~~
s_string.h:10:8: note: from previous declaration ‘size_t strlcpy(char*, const char*, size_t)’
10 | size_t strlcpy(char *dst, const char *src, size_t size);
| ^~~~~~~
/usr/include/string.h:512:15: error: conflicting declaration of ‘size_t strlcat(char*, const char*, size_t)’ with ‘C’ linkage
512 | extern size_t strlcat (char *__restrict __dest,
| ^~~~~~~
s_string.h:14:8: note: previous declaration with ‘C++’ linkage
14 | size_t strlcat(char *dst, const char *src, size_t size);
| ^~~~~~~
/usr/include/string.h:512:15: error: declaration of ‘size_t strlcat(char*, const char*, size_t) noexcept’ has a different exception specifier
512 | extern size_t strlcat (char *__restrict __dest,
| ^~~~~~~
s_string.h:14:8: note: from previous declaration ‘size_t strlcat(char*, const char*, size_t)’
14 | size_t strlcat(char *dst, const char *src, size_t size);
| ^~~~~~~
make[2]: *** [fte-unix.mak:159: s_string.o] Error 1
make[2]: *** Waiting for unfinished jobs....
cfte.cpp: In function ‘int LoadFile(const char*, const char*, int)’:
cfte.cpp:1885:29: warning: ‘localconfig/’ directive writing 12 bytes into a region of size between 1 and 1024 [-Wformat-overflow=]
1885 | sprintf(tmp, "%slocalconfig/%s", StartDir, CfgName);
| ^~~~~~~~~~~~
In file included from /usr/include/stdio.h:964,
from cfte.cpp:22:
In function ‘int sprintf(char*, const char*, ...)’,
inlined from ‘int LoadFile(const char*, const char*, int)’ at cfte.cpp:1885:20:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:30:34: note: ‘__builtin___sprintf_chk’ output 13 or more bytes (assuming 1036) into a destination of size 1024
30 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
cfte.cpp: In function ‘int LoadFile(const char*, const char*, int)’:
cfte.cpp:1893:37: warning: ‘config/’ directive writing 7 bytes into a region of size between 1 and 1024 [-Wformat-overflow=]
1893 | sprintf(tmp, "%sconfig/%s", StartDir, CfgName);
| ^~~~~~~
In function ‘int sprintf(char*, const char*, ...)’,
inlined from ‘int LoadFile(const char*, const char*, int)’ at cfte.cpp:1893:28:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:30:34: note: ‘__builtin___sprintf_chk’ output 8 or more bytes (assuming 1031) into a destination of size 1024
30 | return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31 | __glibc_objsize (__s), __fmt,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32 | __va_arg_pack ());
| ~~~~~~~~~~~~~~~~~
make[2]: Leaving directory '/<<PKGBUILDDIR>>/src'
dh_auto_build: error: cd src && make -j2 "INSTALL=install --strip-program=true" -f fte-unix.mak returned exit code 2
make[1]: *** [debian/rules:17: override_dh_auto_build] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:12: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2
--------------------------------------------------------------------------------
The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:
https://people.debian.org/~sanvila/build-logs/202405/
About the archive rebuild: The build was made on virtual machines
of type m6a.large and r6a.large from AWS, using sbuild and a
reduced chroot with only build-essential packages.
If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.
If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.
Thanks.
Reply to: