[Debian-med-packaging] Bug#978837: Bug#978837: indelible: ftbfs with autoconf 2.70

Fabian Klötzl kloetzl at evolbio.mpg.de
Sat Jan 16 15:52:40 GMT 2021


Hi,

Thanks for this bug report. Unfortunately, I had trouble reproducing it 
locally, so I can't say I have resolved it. Further, a few things strike 
me as odd:

1. The first error complains about not being able to find malloc from 
within a cstdlib file.
2. For the second error the compiler suggests including cstdlib, which 
triggered the first error.
3. How is this error related to a change in autoconf?
4. Why doesn't autoconf find a GNU libc compatible malloc?

I am going to ignore this report for now and just hope it was a small 
hiccup in the build system and won't happen again.

Best,
Fabian


On 31.12.20 15:27, Matthias Klose wrote:
> Package: src:indelible
> Version: 1.03-5
> Severity: normal
> Tags: sid bookworm
> User: doko at debian.org
> Usertags: ftbfs-ac270
> 
> [This bug report is not targeted to the upcoming bullseye release]
> 
> The package fails to build in a test rebuild on at least amd64 with
> autoconf 2.70, but succeeds to build with autoconf 2.69. The
> severity of this report will be raised before the bookworm release,
> so nothing has to be done for the bullseye release.
> 
> The full build log can be found at:
> http://qa-logs.debian.net/2020/09/26.ac270/indelible_1.03-5_unstable_ac270.log
> The last lines of the build log are at the end of this report.
> 
> To build with autoconf 2.70, please install the autoconf package from
> experimental:  apt-get -t=experimental install autoconf
> 
> [...]
> checking whether gcc understands -c and -o together... yes
> checking dependency style of gcc... none
> checking how to run the C preprocessor... gcc -E
> checking for g++... g++
> checking whether the compiler supports GNU C++... yes
> checking whether g++ accepts -g... yes
> checking for g++ option to enable C++11 features... none needed
> checking dependency style of g++... none
> checking for cos in -lm... yes
> checking for sys/types.h... yes
> checking for sys/stat.h... yes
> checking for strings.h... yes
> checking for inttypes.h... yes
> checking for stdint.h... yes
> checking for unistd.h... yes
> checking for size_t... yes
> checking for int32_t... yes
> checking for uint32_t... yes
> checking for stdbool.h that conforms to C99... yes
> checking for _Bool... no
> checking build system type... x86_64-pc-linux-gnu
> checking host system type... x86_64-pc-linux-gnu
> checking for GNU libc compatible malloc... no
> checking for limits.h... no
> checking for floor... yes
> checking for pow... yes
> checking for sqrt... yes
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: executing depfiles commands
>     dh_auto_build
> 	make -j4
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> g++ -DPACKAGE_NAME=\"indelible\" -DPACKAGE_TARNAME=\"indelible\" -DPACKAGE_VERSION=\"1.03\" -DPACKAGE_STRING=\"indelible\ 1.03\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"indelible\" -DVERSION=\"1.03\" -DHAVE_LIBM=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DSTDC_HEADERS=1 -DHAVE_STDBOOL_H=1 -DHAVE_MALLOC=0 -Dmalloc=rpl_malloc -DHAVE_FLOOR=1 -DHAVE_POW=1 -DHAVE_SQRT=1 -I.  -Isrc -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -c -o indelible-indelible.o `test -f 'src/indelible.cpp' || echo './'`src/indelible.cpp
> In file included from /usr/include/c++/10/stdlib.h:36,
>                   from src/indelible.cpp:100:
> /usr/include/c++/10/cstdlib:151:11: error: ‘malloc’ has not been declared in ‘::’
>    151 |   using ::malloc;
>        |           ^~~~~~
> In file included from src/indelible.cpp:100:
> /usr/include/c++/10/stdlib.h:65:12: error: ‘malloc’ has not been declared in ‘std’
>     65 | using std::malloc;
>        |            ^~~~~~
> In file included from src/models.cpp:35,
>                   from src/control.cpp:38,
>                   from src/indelible.cpp:135:
> src/paml.cpp: In function ‘std::string newrandomtree(int, double, double, double, double, int, int)’:
> src/paml.cpp:852:27: error: ‘malloc’ was not declared in this scope
>    852 |        if((space=(double*)malloc(10000*sizeof(double)))==NULL) error2("oom");
>        |                           ^~~~~~
> In file included from src/models.cpp:35,
>                   from src/control.cpp:38,
>                   from src/indelible.cpp:135:
> src/paml.cpp:46:1: note: ‘malloc’ is defined in header ‘<cstdlib>’; did you forget to ‘#include <cstdlib>’?
>     45 | #include "float.h"
>    +++ |+#include <cstdlib>
>     46 | #include <iostream>
> In file included from src/models.cpp:35,
>                   from src/control.cpp:38,
>                   from src/indelible.cpp:135:
> src/paml.cpp:863:33: error: ‘malloc’ was not declared in this scope
>    863 |        if((nodes=(struct TREEN*)malloc(i))==NULL) error2("oom");
>        |                                 ^~~~~~
> src/paml.cpp:863:33: note: ‘malloc’ is defined in header ‘<cstdlib>’; did you forget to ‘#include <cstdlib>’?
> make[1]: *** [Makefile:486: indelible-indelible.o] Error 1
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
> dh_auto_build: error: make -j4 returned exit code 2
> make: *** [debian/rules:7: binary] Error 25
> dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
> 
> _______________________________________________
> Debian-med-packaging mailing list
> Debian-med-packaging at alioth-lists.debian.net
> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-med-packaging
> 



More information about the Debian-med-packaging mailing list