Can't compile net-www/epiphany-1.0 - might be a gcc-2.95 problem? /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-sign-compare -Werror -DORBIT2=1 -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/libbonoboui-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libglade-2.0 -I/usr/include/gnome-vfs-module-2.0 -I/usr/include/eel-2 -I/usr/include/gail-1.0 -DSHARE_DIR=\"/usr/share/epiphany\" -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -mcpu=i686 -O3 -pipe -c -o ephy-gui.lo `test -f 'ephy-gui.c' || echo './'`ephy-gui.cDGDK_PIXBUF_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -mcpu=i686 -O3 -pipe -c ephy-gui.c -Wp,-MD,.deps/ephy-gui.TPlo -fPIC -DPIC -o .libs/ephy-gui.oude -I/usr/include/libxml2 -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/libbonoboui-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libglade-2.0 -I/usr/include/gnome-vfs-module-2.0 -I/usr/include/eel-2 -I/usr/include/gail-1.0 -DSHARE_DIR=\"/usr/share/epiphany\" -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -mcpu=i686 -O3 -pipe -c ephy-node-filter.c -Wp,-MD,. deps/ephy-node-filter.TPlo -fPIC -DPIC -o .libs/ephy-node-filter.o source='ephy-node-db.c' object='ephy-node-db.lo' libtool=yes \ depfile='.deps/ephy-node-db.Plo' tmpdepfile='.deps/ephy-node-db.TPlo' \ depmode=gcc /bin/sh ../depcomp \ /bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-sign-compare -Werror -DORBIT2=1 -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/libbonoboui-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libglade-2.0 -I/usr/include/gnome-vfs-module-2.0 -I/usr/include/eel-2 -I/usr/include/gail-1.0 -DSHARE_DIR=\"/usr/share/epiphany\" -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -mcpu=i686 -O3 -pipe -c -o ephy-node-db.lo `test -f 'ephy-node-db.c' || echo './'`ephy-node-db.c cc1: warnings being treated as errors ephy-node.c: In function `ephy_node_sort_children': ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic ephy-node.c:1113: warning: pointer of type `void *' used in arithmetic make[4]: *** [ephy-node.lo] Error 1 make[4]: *** Waiting for unfinished jobs.... gcc -DHAVE_CONFIG_H -I. -I. -I.. -Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-sign-compare -Werror -DORBIT2=1 -pthread -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/X11R6/include -I/usr/include/freetype2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/gconf/2 -I/usr/include/libbonoboui-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libglade-2.0 -I/usr/include/gnome-vfs-module-2.0 -I/usr/include/eel-2 -I/usr/include/gail-1.0 -DSHARE_DIR=\"/usr/share/epiphany\" -DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED -mcpu=i686 -O3 -pipe -c ephy-node-db.c -Wp,-MD,.deps/ephy-node-db.TPlo -fPIC -DPIC -o .libs/ephy-node-db.o make[4]: Leaving directory `/var/tmp/portage/epiphany-1.0/work/epiphany-1.0/lib' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/epiphany-1.0/work/epiphany-1.0/lib' make[2]: *** [all] Error 2 make[2]: Leaving directory `/var/tmp/portage/epiphany-1.0/work/epiphany-1.0/lib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/epiphany-1.0/work/epiphany-1.0' make: *** [all] Error 2 !!! ERROR: net-www/epiphany-1.0 failed. !!! Function gnome2_src_compile, Line 39, Exitcode 2 !!! compile failure Calculating dependencies ...done! >>> emerge (1 of 1) net-www/epiphany-1.0 to / >>> md5 src_uri ;-) epiphany-1.0.tar.bz2 Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.49-r4 (default-1.0, gcc-2.95.3, glibc-2.2.5-r8, 2.4.22) ============================================================== === System uname: 2.4.22 i686 Transmeta(tm) Crusoe(tm) Processor TM5800 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-mcpu=i686 -O3 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-mcpu=i686 -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache autoaddcvs digest sandbox strict" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio. org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="x86 apm avi crypt cups encode libg++ mmx mpeg ncurses pdflib quicktime spell truetype xml2 xmms xv aalib berkdb esd gdbm gif gnome-libs gpm gtk imlib java libwww motif mozilla oggvorbis pam python readline sdl snmp ssl svga tcpd -3dnow alsa apache2 -arts bonobo cdr curses dga dvd emacs ethereal evo fbcon gnome gtk2 gtkhtml guile jpeg -kde lcms -lirc -mikmod -moznoxft mysql nas -nls odbc -opengl oss pcmcia pda perl pic plotutils png pnp -qt -qtmt samba skey -slang smooth tcltk tetex tiff trusted usb vim-with-x xml X X509 zlib"
Oops - didn't mean to put this down as "major" severity, although I guess gnome is pretty important for some people (I was only experimenting with gnome-2.4 myself).
Works for me with GCC-3.2, so a GCC-2.95 problem would be a likely scenario. Do you have a compelling reason to use 2.95? >>> net-www/epiphany-1.0 merged. >>> Recording net-www/epiphany in "world" favorites file... >>> clean: No packages selected for removal. System info: Portage 2.0.49-r4 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.6.0-test5-mm1) ================================================================= System uname: 2.6.0-test5-mm1 i686 AMD Athlon(TM) MP 1800+ ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=athlon-mp -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -march=athlon-mp -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://ftp.snt.utwente.nl/gentoo-portage" USE="x86 avi crypt cups encode foomaticdb jpeg kde libg++ libwww mad mmx mpeg ncurses pdflib png quicktime spell truetype xml2 xmms xv zlib alsa gdbm berkdb slang readline ggi tcltk java X sdl tcpd pam ssl perl python esd imlib oggvorbis gnome gtk motif opengl mozilla acpi curl dvd ethereal faad gtk2 imap ipv6 jikes md5sum mdb moznoirc moznomail pic S3TC slp snmp sse tiff usb v4l wmf xfs xinerama xvid -oss -apm -arts -gif -gpm -mikmod -qt -svga -nls"
Well it would take me about a week to rebuild my system using gcc-3 on my lowly laptop. Besides, gcc 2.95.3 is still the recommended compiler for building the kernel, so I intend to stick with 2.95 until Linus says it's OK :-)
Created attachment 17718 [details, diff] patch to fix warnings under gcc-2.95 OK, I've had a closer look at the problem and here's a patch that seems to work for me. The problem was a memset(), but I think that with glib, you are supposed to use g_new0() instead of g_new() and memset().
Created attachment 17719 [details] ebuild that uses the above patch And here's an ebuild that uses my patch.
Bug-wranglers - epiphany is a package maintained by the Gnome team. Please re-assign ;-) Stu
Yes, I think this looks most definitively like a gcc-2 error. I can reproduce it. I'll take a look at the patch and see if this can be reported to the upstream maintainers as well. As a possible workaround, try emerging via: CFLAGS="-w" emerge epiphany Thanks for the report and your contributions.
Ok, the patch looks good, it has been committed now. As a side note, Epiphany 1.0.1 doesn't bring this problem because the developers decided to disable the compilation flag -Werror from the default scripts. Thank you for your report and help.
Additional info regarding this bugreport... :) Modified the patch so it just disables -Werror. Not that the original patch had any problems. Studying the code carefully, one can notice how new_order gets entirely filled with values from a hash table, so it doesn't matter much if new_order gets initialized or not. That is, previously filling its fields with 0's or -1's doesn't make much of a difference, the developer's intention seems to be a simple initialization, but it is in fact a good idea to leave the code intact just to be on the safe side. Moreover, the following line is a tricky one: memset (new_order, -1, sizeof (int) * newkids->len); From reading the warning message (warning: pointer of type `void *' used in arithmetic) one could think that the natural fix would be something like: memset (new_order, -1, sizeof (int) * (size_t)newkids->len); But the problem is not with the 3rd argument, it's with the new_order variable itself. Of course, the code isn't wrong in any way, it's a bug in gcc-2; it doesn't take a lot of googling to learn about this bug :). Well, there's more to it than this --reading Epiphany's source code is, like with most other free software projects, quite an interesting exercise and a lot of things come to play when debuging even the simplest issues--, but I just wanted to let this documented here, for whatever it's worth. Free software rocks.. :) Thanks.