Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 88276 - bogofilter fails to emerge
Summary: bogofilter fails to emerge
Status: RESOLVED DUPLICATE of bug 87560
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High critical (vote)
Assignee: Jeremy Huddleston (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 88107
  Show dependency tree
 
Reported: 2005-04-07 09:29 UTC by Manuel Sabban
Modified: 2005-07-17 13:06 UTC (History)
4 users (show)

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


Attachments
patch for sys-kernel/linux-headers (errno.h.patch,447 bytes, patch)
2005-04-07 12:04 UTC, Simon Stelling (RETIRED)
Details | Diff
make create_ml_includes produce absolute links (multilib_eclass-ml_includes.patch,1.14 KB, patch)
2005-04-11 05:16 UTC, Herbie Hopkins (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Manuel Sabban 2005-04-07 09:29:01 UTC
bogofilter fails to emerge. It seems to be confused with some header files:
/usr/include/asm/errno.h and /usr/include/asm-x86_64/errno.h

Reproducible: Always
Steps to Reproduce:
1. emerge bogofilter

Actual Results:  
The emerge fails:
In file included from /usr/include/linux/errno.h:4,
                 from /usr/include/bits/errno.h:25,
                 from /usr/include/errno.h:36,
                 from bogoconfig.c:42:
/usr/include/asm/errno.h:7:33: ../asm-x86_64/errno.h: No such file or directory
if x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.  -I../gnugetopt -I../trio
-I- -I. -I.  -I../gsl/specfunc -I..  -DBOGOFILTER  -O2 -march=athlon64
-mtune=athlon64 -pipe  -Wpointer-arith -ggdb -Wall -W -Wstrict-prototypes
-Wmissing-prototypes -Wshadow -Wbad-function-cast -Wcast-qual -Wcast-align
-Wwrite-strings -Waggregate-return -Wmissing-declarations
-Wmissing-format-attribute -Wnested-externs -fno-common -Wchar-subscripts
-Wcomment -Wimplicit -Wsequence-point -Wreturn-type -Wno-system-headers -Wformat
-MT collect.o -MD -MP -MF ".deps/collect.Tpo" -c -o collect.o collect.c; \
then mv -f ".deps/collect.Tpo" ".deps/collect.Po"; else rm -f
".deps/collect.Tpo"; exit 1; fi
if x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.  -I../gnugetopt -I../trio
-I- -I. -I.  -I../gsl/specfunc -I..  -DBOGOFILTER  -O2 -march=athlon64
-mtune=athlon64 -pipe  -Wpointer-arith -ggdb -Wall -W -Wstrict-prototypes
-Wmissing-prototypes -Wshadow -Wbad-function-cast -Wcast-qual -Wcast-align
-Wwrite-strings -Waggregate-return -Wmissing-declarations
-Wmissing-format-attribute -Wnested-externs -fno-common -Wchar-subscripts
-Wcomment -Wimplicit -Wsequence-point -Wreturn-type -Wno-system-headers -Wformat
-MT configfile.o -MD -MP -MF ".deps/configfile.Tpo" -c -o configfile.o
configfile.c; \
then mv -f ".deps/configfile.Tpo" ".deps/configfile.Po"; else rm -f
".deps/configfile.Tpo"; exit 1; fi
In file included from /usr/include/linux/errno.h:4,
                 from /usr/include/bits/errno.h:25,
                 from /usr/include/errno.h:36,
                 from bogoreader.c:29:
/usr/include/asm/errno.h:7:33: ../asm-x86_64/errno.h: No such file or directory
if x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I.  -I../gnugetopt -I../trio
-I- -I. -I.  -I../gsl/specfunc -I..  -DBOGOFILTER  -O2 -march=athlon64
-mtune=athlon64 -pipe  -Wpointer-arith -ggdb -Wall -W -Wstrict-prototypes
-Wmissing-prototypes -Wshadow -Wbad-function-cast -Wcast-qual -Wcast-align
-Wwrite-strings -Waggregate-return -Wmissing-declarations
-Wmissing-format-attribute -Wnested-externs -fno-common -Wchar-subscripts
-Wcomment -Wimplicit -Wsequence-point -Wreturn-type -Wno-system-headers -Wformat
-MT datastore.o -MD -MP -MF ".deps/datastore.Tpo" -c -o datastore.o datastore.c; \
then mv -f ".deps/datastore.Tpo" ".deps/datastore.Po"; else rm -f
".deps/datastore.Tpo"; exit 1; fi
make[3]: *** [bogoconfig.o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from /usr/include/linux/errno.h:4,
                 from /usr/include/bits/errno.h:25,
                 from /usr/include/errno.h:36,
                 from configfile.c:20:
/usr/include/asm/errno.h:7:33: ../asm-x86_64/errno.h: No such file or directory
make[3]: *** [configfile.o] Error 1
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/bogofilter-0.92.8/work/bogofilter-0.92.8/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory
`/var/tmp/portage/bogofilter-0.92.8/work/bogofilter-0.92.8/src'
make: *** [all-recursive] Error 1

!!! ERROR: mail-filter/bogofilter-0.92.8 failed.
!!! Function src_compile, Line 556, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status message.



Expected Results:  
It should have compiler bogofilter fine.

Gentoo Base System version 1.6.10
Portage 2.0.51.19 (default-linux/amd64/2004.3, gcc-3.4.3-20050110,
glibc-2.3.4.20050125-r1, 2.6.11-rc4 x86_64)
=================================================================
System uname: 2.6.11-rc4 x86_64 AMD Athlon(tm) 64 Processor 3500+
Python:              dev-lang/python-2.3.5 [2.3.5 (#1, Mar  1 2005, 07:48:47)]
dev-lang/python:     2.3.5
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.5, 1.9.5, 1.8.5-r3, 1.6.3, 1.7.9-r1, 1.4_p6
sys-devel/binutils:  2.15.92.0.2-r8
sys-devel/libtool:   1.5.14
virtual/os-headers:  2.6.8.1-r4
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=athlon64 -mtune=athlon64 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /sbin/rc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-O2 -march=athlon64 -mtune=athlon64 -pipe"
DISTDIR="/usr/distfiles"
FEATURES="autoaddcvs autoconfig ccache distcc distlocks fixpackages sandbox
userpriv usersandbox"
GENTOO_MIRRORS="http://ftp.belnet.be/linux/gentoo"
MAKEOPTS="-j6"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 X Xaw3d a52 aalib acl acpi aim alsa apache2 asm atm avi
bash-completion berkdb bitmap-fonts bonobo bzlib cacheemu cairo ccache cdda cddb
cdio cdr crypt cscope cups curl dba divx4linux doc dv dvd dvdr dvdread encode
faad fam fame fbcon ffmpeg flac font-server fortran ftp gd-external gdbm gif
gimpprint glitz gnustep gnutls gpm gsnd gstreamer gtk gtk2 hal icq imagemagick
imap imlib imlib2 ipv6 jabber jp2 jpeg kexec layout-from-conf-file libcaca
libwww lm_sensors lzo lzw lzw-tiff mad matroska mbox motif mp3 mpeg4 mplayer
mule multilib multislot mythtv ncurses network nls no_wxgtk1 nptl nptlonly objc
ogg oggvorbis opengl openntpd oscar pam pcre perl plotutils png pthreads python
rdesktop readline rplay rrdtool sasl sdl semanticfix shaper slang spell sqlite
ssl startup-notification tcltk tcpd tetex theora threads tiff truetype
truetype-fonts type1-fonts unicode uptimed usb userland userlocales v4l vdesktop
xine xml2 xmms xosd xpm xprint xrandr xv xvid zlib zvbi"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS
Comment 1 Tuan Van (RETIRED) gentoo-dev 2005-04-07 11:40:13 UTC
CC AMD64 team for help.
Comment 2 Simon Stelling (RETIRED) gentoo-dev 2005-04-07 12:04:13 UTC
Created attachment 55581 [details, diff]
patch for sys-kernel/linux-headers

this patch should fix it (at least it worked here). plasmaroo: please check&fix
it ;)
Comment 3 Simon Stelling (RETIRED) gentoo-dev 2005-04-07 12:05:17 UTC
argh, forgot to reassign

plasmaroo: please check comment 2
Comment 4 Tim Yamin (RETIRED) gentoo-dev 2005-04-07 12:53:44 UTC
Not a headers issue, to an extent:

/* Common header file autogenerated by create_ml_includes in multilib.eclass */
Comment 5 Diego Elio Pettenò (RETIRED) gentoo-dev 2005-04-09 02:32:04 UTC
system headers shouldn't include with "" as far as I know, so there's something wrong with the eclass.
Comment 6 Simon Stelling (RETIRED) gentoo-dev 2005-04-09 11:25:56 UTC
eradicator: is there a special reason for create_ml_includes() in multilib.eclass generating symlinks and not just set <asm-${arch}/errno.h>?
Comment 7 Jeremy Huddleston (RETIRED) gentoo-dev 2005-04-09 11:38:40 UTC
blubb, it doesn't create symlinks.  It creates stubs like:
cat /usr/include/asm/processor.h 
/* Common header file autogenerated by create_ml_includes in multilib.eclass */
#ifdef __i386__
#include "../asm-i386/processor.h"
#endif /* __i386__ */

#ifdef __x86_64__
#include "../asm-x86_64/processor.h"
#endif /* __x86_64__ */

which works fine...
Comment 8 Simon Stelling (RETIRED) gentoo-dev 2005-04-09 11:43:02 UTC
eradicator: yes, sorry, that's what i meant...
but it seems as those "../" are the problem, replacing them with <> works :S
*slightly confused*
Comment 9 Jeremy Huddleston (RETIRED) gentoo-dev 2005-04-09 11:57:28 UTC
hmm... I agree that <absolute> is more correct, but "relative" should work and is easier to generate... hmm...
Comment 10 Diego Elio Pettenò (RETIRED) gentoo-dev 2005-04-10 05:14:45 UTC
relative is relative to the initial source file, iirc, not relative to the file which includes it.
Comment 11 Benjamin Schindler (RETIRED) gentoo-dev 2005-04-10 10:01:27 UTC
Jeremy: <bla> is more correct - I agree - and actually, the " " notation has caused trouble with ltrace (the do an -I- in CFLAGS in their makefiles - there is a bug about it, still unresolved). 
Comment 12 Jeremy Huddleston (RETIRED) gentoo-dev 2005-04-10 11:31:00 UTC
Ah.  And there's an -I- in here with bogofilter as well... I wonder why this hasn't been caught as an issue until just now =(

I'm bumping the severity, but I won't be able to get to it for a while...
Comment 13 Herbie Hopkins (RETIRED) gentoo-dev 2005-04-11 05:16:42 UTC
Created attachment 55978 [details, diff]
make create_ml_includes produce absolute links

This patch to multilib.eclass changes create_ml_includes in order to produce
absolute links rather than the present relative ones. After applying this patch
and re-emerging linux-headers and glibc, both bogofilter and ltrace compile
without problems. Could use further testing however.
Comment 14 Jeremy Huddleston (RETIRED) gentoo-dev 2005-04-11 14:43:13 UTC
Hmm... that assumes the base directory is called 'include'... I don't like that assumption, but it works for our purposes, and I doubt anyone will have an oddly named include path.

I'll test this out with glibc-2.3.5 and linux-headers and commit it before I commit the next glibc.
Comment 15 Herbie Hopkins (RETIRED) gentoo-dev 2005-04-12 02:50:57 UTC

*** This bug has been marked as a duplicate of 87560 ***
Comment 16 Lucero del Alba 2005-05-10 23:32:26 UTC
Hi, same similar problem here.  I just re-emerged linux-headers and I realized I've got both patches (attach 55581 and 55978); still, for some reason I cannot get bogofilter compiled :(

(...)
In file included from ./score.h:7,
                 from globals.c:15:
./wordhash.h:10: error: parse error before "word_t"
./wordhash.h:10: warning: no semicolon at end of struct or union
./wordhash.h:14: error: parse error before '}' token
./wordhash.h:14: warning: type defaults to `int' in declaration of `hashnode_t'
./wordhash.h:14: warning: data definition has no type or storage class
./wordhash.h:17: error: parse error before "hashnode_t"
./wordhash.h:17: warning: no semicolon at end of struct or union
./wordhash.h:20: error: conflicting types for 'next'
./wordhash.h:12: error: previous declaration of 'next' was here
./wordhash.h:21: error: parse error before '}' token
./wordhash.h:21: warning: type defaults to `int' in declaration of `wh_alloc_node'
./wordhash.h:21: warning: data definition has no type or storage class
./wordhash.h:30: error: parse error before '*' token
./wordhash.h:30: warning: type defaults to `int' in declaration of `hashnode_pt'
./wordhash.h:30: warning: data definition has no type or storage class
./wordhash.h:37: error: parse error before "uint"
./wordhash.h:37: warning: no semicolon at end of struct or union
./wordhash.h:38: warning: type defaults to `int' in declaration of `count'
./wordhash.h:38: warning: data definition has no type or storage class
./wordhash.h:39: error: parse error before "size"
./wordhash.h:39: warning: type defaults to `int' in declaration of `size'
./wordhash.h:39: warning: data definition has no type or storage class
./wordhash.h:41: error: parse error before '*' token
./wordhash.h:41: warning: type defaults to `int' in declaration of `bin'
./wordhash.h:41: warning: data definition has no type or storage class
./wordhash.h:42: error: parse error before '*' token
./wordhash.h:42: warning: type defaults to `int' in declaration of `nodes'
./wordhash.h:42: warning: data definition has no type or storage class
./wordhash.h:45: error: parse error before '*' token
./wordhash.h:45: warning: type defaults to `int' in declaration of `iter_ptr'
./wordhash.h:45: warning: data definition has no type or storage class
./wordhash.h:46: error: parse error before '*' token
./wordhash.h:46: warning: type defaults to `int' in declaration of `iter_head'
./wordhash.h:46: warning: data definition has no type or storage class
./wordhash.h:47: error: parse error before '*' token
./wordhash.h:47: warning: type defaults to `int' in declaration of `iter_tail'
./wordhash.h:47: warning: data definition has no type or storage class
./wordhash.h:49: error: parse error before '*' token
./wordhash.h:49: warning: type defaults to `int' in declaration of `order'
./wordhash.h:49: warning: data definition has no type or storage class
./wordhash.h:50: error: parse error before '*' token
./wordhash.h:50: warning: type defaults to `int' in declaration of `props'
./wordhash.h:50: warning: data definition has no type or storage class
./wordhash.h:51: error: parse error before '*' token
./wordhash.h:51: warning: type defaults to `int' in declaration of `cnts'
./wordhash.h:51: warning: data definition has no type or storage class
./wordhash.h:52: error: parse error before '}' token
./wordhash.h:52: warning: type defaults to `int' in declaration of `wordhash_t'
./wordhash.h:52: warning: data definition has no type or storage class
./wordhash.h:54: error: parse error before '*' token
./wordhash.h:54: warning: type defaults to `int' in declaration of `wordhash_new'
./wordhash.h:54: warning: data definition has no type or storage class
./wordhash.h:55: error: parse error before '*' token
./wordhash.h:55: error: parse error before "uint"
./wordhash.h:55: warning: type defaults to `int' in declaration of `wordhash_init'
./wordhash.h:55: warning: function declaration isn't a prototype
./wordhash.h:55: warning: data definition has no type or storage class
./wordhash.h:57: error: parse error before '*' token
./wordhash.h:57: warning: function declaration isn't a prototype
./wordhash.h:58: error: parse error before '*' token
./wordhash.h:58: warning: function declaration isn't a prototype
./wordhash.h:59: error: parse error before '*' token
./wordhash.h:59: warning: function declaration isn't a prototype
./wordhash.h:60: error: parse error before '*' token
./wordhash.h:60: error: parse error before ')' token
./wordhash.h:61: error: parse error before '*' token
./wordhash.h:61: warning: function declaration isn't a prototype
./wordhash.h:63: warning: type defaults to `int' in declaration of `wordhash_t'
./wordhash.h:63: warning: declaration of 'wordhash_t' shadows a global declaration
./wordhash.h:52: warning: shadowed declaration is here
./wordhash.h:63: error: parse error before '*' token
./wordhash.h:63: warning: function declaration isn't a prototype
./wordhash.h:68: error: parse error before '*' token
./wordhash.h:68: error: parse error before ')' token
./wordhash.h:71: error: parse error before '*' token
./wordhash.h:71: warning: function declaration isn't a prototype
./wordhash.h:74: error: parse error before '*' token
./wordhash.h:74: warning: function declaration isn't a prototype
./wordhash.h:76: error: parse error before '*' token
./wordhash.h:76: warning: function declaration isn't a prototype
./wordhash.h:77: error: parse error before '*' token
./wordhash.h:77: warning: function declaration isn't a prototype
./wordhash.h:78: error: parse error before '*' token
./wordhash.h:78: error: parse error before '*' token
./wordhash.h:78: warning: type defaults to `int' in declaration of `convert_propslist_to_countlist'
./wordhash.h:78: warning: function declaration isn't a prototype
./wordhash.h:78: warning: data definition has no type or storage class
./wordhash.h:79: error: parse error before '*' token
./wordhash.h:79: error: parse error before '*' token
./wordhash.h:79: warning: type defaults to `int' in declaration of `convert_wordhash_to_propslist'
./wordhash.h:79: warning: function declaration isn't a prototype
./wordhash.h:79: warning: data definition has no type or storage class
./wordhash.h:83: warning: type defaults to `int' in declaration of `word_t'
./wordhash.h:83: warning: declaration of 'word_t' shadows a global declaration
./word.h:21: warning: shadowed declaration is here
./wordhash.h:83: error: parse error before '*' token
./wordhash.h:83: warning: function declaration isn't a prototype
In file included from globals.c:15:
./score.h:18: error: parse error before "u_int32_t"
./score.h:18: warning: no semicolon at end of struct or union
./score.h:23: error: parse error before '}' token
./score.h:23: warning: type defaults to `int' in declaration of `score_t'
./score.h:23: warning: data definition has no type or storage class
./score.h:28: error: parse error before '*' token
./score.h:28: warning: function declaration isn't a prototype
globals.c:62: error: parse error before "db_cachesize"
globals.c:62: warning: type defaults to `int' in declaration of `db_cachesize'
globals.c:62: warning: data definition has no type or storage class
globals.c:70: error: parse error before "wordlist_version"
globals.c:70: warning: type defaults to `int' in declaration of `wordlist_version'
globals.c:70: warning: data definition has no type or storage class
{standard input}: Assembler messages:
{standard input}:475: Error: symbol `next' is already defined
make[3]: *** [globals.o] Error 1
make[3]: Leaving directory `/var/tmp/portage/bogofilter-0.92.8/work/bogofilter-0.92.8/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/bogofilter-0.92.8/work/bogofilter-0.92.8/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/var/tmp/portage/bogofilter-0.92.8/work/bogofilter-0.92.8/src'
make: *** [all-recursive] Error 1

!!! ERROR: mail-filter/bogofilter-0.92.8 failed.
!!! Function src_compile, Line 556, Exitcode 2
!!! emake failed
!!! If you need support, post the topmost build error, NOT this status message.

Any ideas?
Comment 17 Jeremy Huddleston (RETIRED) gentoo-dev 2005-05-11 00:51:52 UTC
Lucero, posting in a resolved bug will normally get you ignored... you're pretty lucky that I actually saw this...

Also, when providing output from compilation, you need to provide everything from the bottom of the log up to the gcc command that produced the problem (and maybe more).  The important error message is contained somewhere in your "(...)"
Comment 18 Jeremy Huddleston (RETIRED) gentoo-dev 2005-05-11 00:52:11 UTC
oh, and youu need to recompile glibc to get this fixed.