Summary: | games-strategy/ufo-ai fails to build w/ glibc 2.8 and gcc 4.1 (WTF?) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Diego Elio Pettenò (RETIRED) <flameeyes> |
Component: | [OLD] Games | Assignee: | Gentoo Games <games> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | chtof62, esigra, jaak, quazgar |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | Build log |
Description
Diego Elio Pettenò (RETIRED)
2008-11-18 21:57:31 UTC
Created attachment 172309 [details]
Build log
According http://ufoai.ninex.info/forum/index.php?topic=2891.0, a user has the same problem with gcc-4.1.2 and it can compile successfully with gcc-4.3.1... But as far as I am concerned, I can compile successfully ufo-ai with gcc-4.1.2 !!... I have maybe a beginning of explaination : "__dprintf_chk" is provided via dprintf (I think) by /usr/include/bits/stdio.h (thanks to glibc-2.6.1 on my system) and you are using glibc-2.8_p20080602-r0... Diego, can you check you have dprintf in /usr/include/bits/stdio.h ? In onther words, for now, I think there is maybe a problem with glibc-2.8 (I don't want to install now glibc-2.8 to validate this bug on my computer because it needs a lot of time...). Christophe you're on the right track. dprintf() is indeed present in stdio.h on glibc 2.8 but it's under an __USE_GNU conditional, which means it ś also included in the _GNU_SOURCE cleanup of glibc 2.8. ufo-ai-2.2.1 builds fine for me w/gcc-4.3.2 and glibc-2.9 The lines 189-190 of /usr/include/bits/stdio2.h are the cause for all gi.dprintf() calls to be preprocessed into gi.__dprintf_chk() calls: # define dprintf(fd, ...) \ __dprintf_chk (fd, __USE_FORTIFY_LEVEL - 1, __VA_ARGS__) (In reply to comment #4) > ufo-ai-2.2.1 builds fine for me w/gcc-4.3.2 and glibc-2.9 > and fine for me w/ gcc-4.4.3 and glibc-2.11 was there something here that actually needed to be done? surely gcc-4.1 is now "unsupported" in a sense that gcc-4.3.4 is stable |