Bug#635685: general: gcc -m32 has no access to system-specific includes in multiarch world
reassign 635685 libc6-dev
severity 635685 serious
On 2011-07-28 10:58 +0200, Tim Northover wrote:
> Package: general
> Severity: normal
> It looks like "gcc -m32" has been partially broken by the recent
> hiving off of various headers to /usr/include/x86_64-linux-gnu.
> In particular a program consisting of the single line "#include
> <features.h>" fails with the error:
> In file included from tmp.c:1:0:
> /usr/include/features.h:356:25: fatal error: sys/cdefs.h: No such file
> or directory
> compilation terminated.
> I suspect multiple packages are involved: "cpp -m32 -v" reports not
> searching /usr/include/i386-linux-gnu (or equivalent) so gcc packages
> are probably iffy; but even if it did there's nothing there to find so
> either the gcc-*-multilib or libc6-dev (or possibly even an entirely
> new gcc-*-multiheader one) will need updating.
Confirmed here on i386, ncurses biarch build is broken:
| $ LANG=C debian/rules build-64
| make: Entering directory `/usr/local/src/deb-src/ncurses/ncurses/obj-64/ncurses'
| gcc -o make_hash -DHAVE_CONFIG_H -I../ncurses -I/usr/local/src/deb-src/ncurses/ncurses/ncurses -I/usr/local/src/deb-src/ncurses/ncurses/ncurses/../include -I../include -DUSE_BUILD_CC /usr/local/src/deb-src/ncurses/ncurses/ncurses/tinfo/make_hash.c
| In file included from /usr/include/stdlib.h:320:0,
| from /usr/local/src/deb-src/ncurses/ncurses/ncurses/build.priv.h:61,
| from /usr/local/src/deb-src/ncurses/ncurses/ncurses/tinfo/make_hash.c:40:
| /usr/include/i386-linux-gnu/sys/types.h:99:17: error: two or more data types in declaration specifiers
| make: *** [make_hash] Error 1
| make: Leaving directory `/usr/local/src/deb-src/ncurses/ncurses/obj-64/ncurses'
| make: *** [all] Error 2
| make: Leaving directory `/usr/local/src/deb-src/ncurses/ncurses/obj-64'
| make: *** [build-64] Error 2
It seems libc6-dev multiarch support needs to go back to the drawing