[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#635685: general: gcc -m32 has no access to system-specific includes in multiarch world



On Thu, Jul 28, 2011 at 11:39:50AM +0200, Sven Joachim wrote:
> 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:

This is not "confirming" the bug, the behavior you quote below is entirely
the opposite of what the submitter was reporting.

Tim, what version of libc6-dev-i386 do you have installed?  I cannot
reproduce this problem with 2.13-11.

> ,----
> | $ LANG=C debian/rules build-64
> | [...]
> | make[2]: 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[2]: *** [make_hash] Error 1
> | make[2]: Leaving directory `/usr/local/src/deb-src/ncurses/ncurses/obj-64/ncurses'
> | make[1]: *** [all] Error 2
> | make[1]: 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
> board again.

Sven, please file a separate bug report for this issue.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Attachment: signature.asc
Description: Digital signature


Reply to: