Bug#768484: libiberty-dev conflicts with binutils-dev re ansidecl.h
Package: libiberty-dev
Version: 20131116-1
Both binutils-dev and libiberty-dev include the file "ansidecl.h"
dpkg -S ansidecl.h
binutils-dev: /usr/include/ansidecl.h
libiberty-dev:amd64: /usr/include/libiberty/ansidecl.h
Both use the standard header protection mechanism:
#ifndef _ANSIDECL_H
#define _ANSIDECL_H 1
thus only one of the two can ever get included.
Only /usr/include/libiberty/ansidecl.h defines
ATTRIBUTE_RETURNS_NONNULL ATTRIBUTE_SENTINEL ATTRIBUTE_MALLOC
ATTRIBUTE_NORETURN
and so on ... Thus, making use of libiberty.h will cause a build
break, because these are not defined when the ansidecl from
binutils-dev gets picked up.
Basically, libiberty-dev is unusable (worse than unusable -- it causes
build breaks), if libbfd-dev is installed.
>From what I can tell, libiberty-20141014 also suffers from this problem...
-----
You may ask: why am I using libiberty at all? The answer is dumb: I
want to get pretty-printing for stack traces, by including
line-numbers -- this is something the basic glibc backtrace_symbols()
does not currently do. It would be nice if it did ... :-)
Reply to: