Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 28686 - net-www/epiphany-1.0 fails to compile
Summary: net-www/epiphany-1.0 fails to compile
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-09-14 04:09 UTC by Tristan Henderson
Modified: 2003-10-05 01:42 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
patch to fix warnings under gcc-2.95 (epiphany-1.0-gcc-2.95.patch,527 bytes, patch)
2003-09-14 14:48 UTC, Tristan Henderson
Details | Diff
ebuild that uses the above patch (epiphany-1.0.ebuild,1.24 KB, text/plain)
2003-09-14 14:49 UTC, Tristan Henderson
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tristan Henderson 2003-09-14 04:09:05 UTC
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"
Comment 1 Tristan Henderson 2003-09-14 04:12:19 UTC
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).
Comment 2 Tony Vroon (RETIRED) gentoo-dev 2003-09-14 12:06:04 UTC
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"
Comment 3 Tristan Henderson 2003-09-14 13:05:56 UTC
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 :-)
Comment 4 Tristan Henderson 2003-09-14 14:48:45 UTC
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().
Comment 5 Tristan Henderson 2003-09-14 14:49:17 UTC
Created attachment 17719 [details]
ebuild that uses the above patch

And here's an ebuild that uses my patch.
Comment 6 Stuart Herbert (RETIRED) gentoo-dev 2003-10-04 07:43:09 UTC
Bug-wranglers - epiphany is a package maintained by the Gnome team.  Please
re-assign ;-)

Stu
Comment 7 Leonardo Boshell (RETIRED) gentoo-dev 2003-10-04 08:22:12 UTC
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.
Comment 8 Leonardo Boshell (RETIRED) gentoo-dev 2003-10-04 10:13:48 UTC
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.
Comment 9 Leonardo Boshell (RETIRED) gentoo-dev 2003-10-05 01:42:55 UTC
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.