Compiling of drgeo-1.1.0 with gcc-4.3.1 fails with: ... if i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -DGNOMELOCALEDIR=\""/usr/share/locale"\" -DLOCALEDIR=\"/usr/share/locale\" -DLIBRARY_DIR=\""/usr/share/geo/"\" -DDRGEO_HELPDIR=\""/usr/share/drgeo/help"\" -DDRGEO_GLADEDIR=\""/usr/share/drgeo/glade"\" -DDRGEO_ENCODEDIR=\""/usr/share/drgeo/encode"\" -I/usr/include -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1 -I/usr/include/libglade-2.0 -I/usr/include/libxml2 -O2 -march=pentium4 -fomit-frame-pointer -MT drgeo_drawable.o -MD -MP -MF ".deps/drgeo_drawable.Tpo" \ -c -o drgeo_drawable.o `test -f 'drgeo_drawable.cc' || echo './'`drgeo_drawable.cc; \ then mv -f ".deps/drgeo_drawable.Tpo" ".deps/drgeo_drawable.Po"; \ else rm -f ".deps/drgeo_drawable.Tpo"; exit 1; \ fi In file included from /usr/include/libguile.h:24, from /usr/include/guile/gh.h:24, from ../drgenius_config.h:28, from drgeo_figure.h:39, from drgeo_drawable.h:33, from drgeo_drawable.cc:27: /usr/include/gmp.h:520: error: 'std::FILE' has not been declared make[3]: *** [drgeo_drawable.o] Error 1 With gcc-4.2.4 it compiles without problems. Reproducible: Always vilm ~ # emerge --info WARNING: repository at /usr/portage is missing a repo_name entry WARNING: repository at /usr/portage/local/layman/arcon is missing a repo_name entry WARNING: repository at /usr/portage/local/layman/science is missing a repo_name entry WARNING: repository at /usr/local/portage/xeffects is missing a repo_name entry Portage 2.2_rc1 (default-linux/x86/2007.0, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.25 i686) ================================================================= System uname: Linux-2.6.25-i686-Intel-R-_Pentium-R-_4_CPU_3.00GHz-with-glibc2.0 Timestamp of tree: Sun, 22 Jun 2008 03:00:02 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [disabled] app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 2.4.4-r13, 2.5.2-r4 dev-python/pycrypto: 2.0.1-r6 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.2.5 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.62 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.4 virtual/os-headers: 2.6.25-r4 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/bind /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php 5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch preserve-libs sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ rsync://ftp.fi.muni.c z/pub/linux/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo rsync://gd.tuwien.ac.at/opsys/linux/gentoo ftp://sunsite.informatik.rwth-aachen.de /pub/Linux/gentoo ftp://ftp.tu-clausthal.de/pub/linux/gentoo http://gentoo.oregonstate.edu" LDFLAGS="" LINGUAS="de fr" PKGDIR="/usr/portage/packages/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distf iles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/arcon /usr/portage/local/layman/science /usr/local/portage /usr/local/portage/xeffects /usr/local/sci" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X Xaw3d a52 aac acl acpi administrator afs aiglx alsa amrr ao aotuv apache2 asf atlas auctex audacious audiofile automount bash-completion beag le berkdb bjam blas bluetooth bonobo boo boost bzip2 c++ cairo cdda cddb cdf cdio cdparanoia cdr cgi chm cli corba cracklib cran crypt cups curl cxx daap dbus device-mapper dga dia divx djvu dlloader dmi dri ds3490 dv dvb dvd dvdr dvi dxr3 dynagraph eds effects elf emacs emboss encode epiphany e sd evo examples exif expat extra fam fame ffmpeg fftw firefox fits flac fltk foomaticdb fortran fpx galago gd gdal gdbm geos gif gimp gimpprint gina c glade glitz gml gmp gnokii gnome gnuplot gnutls gphoto2 gpm graphics graphviz gs gsl gsm gstreamer gtk guile hal hardened hddtemp hdf hdf5 hlapi h ttp hvm iconv icq icu id3 imagemagick imap innodb ipv6 irda irmc isdnlog ithreads jabber java jbig john jpeg jpeg2k kerberos kexi keyring ladspa lam e lapack latex lcms ldap libgda libsamplerate lirc lm_sensors lua lzo lzw mad maildir math matroska matrox midi mmx mmxext mng mod mono motif mozdev elop mozilla mozsvg mozxmlterm mp3 mp4 mp4live mpeg mpeg2 mplayer mudflap musicbrainz mysql mysqli nautilus ncurses neXt netcdf netpbm network netwo rkmanager nfs nls nntp nptl nptlonly nsplugin ntfs numarray numeric obex ocaml octave odbc ogdi ogg ole opengl openmp pae pam pcre pda pdf perl plot utils plugins png posix postgres postscript pppd preview-latex proj projectx pstricks python qhull quicktime readline real reflection reiserfs rhyth mbox rle rpc rrdcgi rrdtool samba sasl science sdl session slang slp smp sndfile snmp soup sox speex spell spl sqlite sse sse2 ssl stlport subtitles subversion suexec svg t1lib tcl tcpd tex theora threads thunderbird tidy tiff tk truetype unicode userlocales utempter v4l2 vorbis win32codecs wmf wxwindows x86 xattr xemacs xext xine xml xmlreader xmlrpc xorg xpm xv xvid xvmc zlib zvbi" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym c opy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2 _MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz _host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident i magemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse " KERNEL="linux" LCD_DEVICES= "bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de fr" USERLAND="GNU" VIDEO_CARDS="mga vesa fbdev" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_ OPTS
Hi Juergen, Thanks much for your bug report and this is indeed a gcc-4.3 issue. However, the root cause is a using std::FILE statement without accompanying cstdio in /usr/include/gmp.h which belongs to dev-libs/gmp. Hence, the issues should likely be fixed within gmp rather than drgeo. I've cc'd the toolchain herd to see what they advise. Thanks, Markus
without having gone through the gmp source extensively, i think your analysis is correct ...
I agree that this looks like a gcc bug, based on http://osdir.com/ml/lib.gmp.bugs/2007-12/msg00023.html. It's now affecting another package, sci-chemistry/coot. Reassigning per comment #2.
http://www.archivum.info/gmp-bugs@swox.com/2008-06/msg00014.html
Great, that post even points to a Debian patch. Perhaps you want to commit it to gmp?
Created attachment 159839 [details, diff] gmp-4.2.2-cstdio-stdfile.patch fedora has a different approach but i don't like it as much http://cvs.fedoraproject.org/viewcvs/devel/gmp/gmp-4.2.2-cstdio.patch?rev=1.1&view=markup
+ 12 Jul 2008; Peter Alfredsen <loki_val@gentoo.org> + +files/gmp-4.2.2-cstdio-stdfile.patch, gmp-4.2.2-r1.ebuild: + Fix include files for gcc-4.3 compat wrt bug #228915 +
Peter: document patches you add http://sources.gentoo.org/dev-libs/gmp/files/gmp-4.2.2-cstdio-stdfile.patch?r1=1.1&r2=1.2