Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 14890 - Kdebase 3.1 fails compile
Summary: Kdebase 3.1 fails compile
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High blocker (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-01-31 22:51 UTC by Francisco León
Modified: 2003-02-05 20:10 UTC (History)
0 users

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


Attachments
Requested log (log.zip,58.45 KB, application/x-zip-compressed)
2003-02-02 18:41 UTC, Francisco León
Details
script (bar,1.42 KB, text/plain)
2003-02-05 17:37 UTC, Hannes Mehnert (RETIRED)
Details
Log requested (script.log,1.51 KB, application/octet-stream)
2003-02-05 18:05 UTC, Francisco León
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Francisco León 2003-01-31 22:51:59 UTC
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I.     -DHAVE_GETUSERSHELL -DUSE_SYSLOG -D
-DXDMCP -ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes
-Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -DNDEBUG -O2  -march=athlon-x
-mmmx -msse -m3dnow -mfpmath=sse -fomit-frame-pointer -D_GNU_SOURCE -c `test -f
echo './'`auth.c
auth.c: In function `ConvertAuthAddr':
auth.c:678: dereferencing pointer to incomplete type
auth.c:678: warning: implicit declaration of function `htonl'
auth.c: In function `writeLocalAuth':
auth.c:995: warning: unused variable `fd'
make[3]: *** [auth.o] Error 1
make[3]: Leaving directory `/var/tmp/portage/kdebase-3.1/work/kdebase-3.1/kdm/b
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/kdebase-3.1/work/kdebase-3.1/kdm'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/kdebase-3.1/work/kdebase-3.1'
make: *** [all] Error 2


Reproducible: Always
Steps to Reproduce:
just emerge kdebase
Actual Results:  
errors

Expected Results:  
kdebase rc6 compiled fine... why now it fails with final?

Portage 2.0.46-r9 (default-x86-1.4, gcc-3.2.1, glibc-2.3.1-r2)
=================================================================
System uname: 2.4.19-gentoo-r10 i686 AMD Athlon(TM) XP 2100+
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo
ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config
/usr/kde/2/share/conf$/usr/kde/3/share/config
/usr/X11R6/lib/X11/xkb:/usr/kde/3.1/share/config:/usr/s$CONFIG_PROTECT_MASK="/etc/gconf
/etc/env.d"
PORTDIR="/usr/portage"
DISTDIR="/usr/portage/distfiles"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR_OVERLAY=""
USE="x86 oss 3dnow apm avi crypt cups encode gif jpeg libg++ libwww mikmod mmx
$nls pdflib png qtmt quicktime spell truetype xml2 xmms xv zlib gtkhtml gdbm
ber$readline arts bonobo svga tcltk java guile X sdl gpm tcpd pam ssl perl
python e$oggvorbis gnome gtk qt kde motif opengl mozilla"
COMPILER="gcc3"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -O3 -pipe -mmmx -msse -m3dnow -mfpmath=sse
-fomit-fram$CXXFLAGS="-march=athlon-xp -O3 -pipe -mmmx -msse -m3dnow
-mfpmath=sse -fomit-fr$ACCEPT_KEYWORDS="x86"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
FEATURES="sandbox ccache"
Comment 1 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-02 16:18:04 UTC
please attach full build log (kdebase.log from 'emerge kdebase >& kdebase.log') 
Comment 2 Francisco León 2003-02-02 18:41:19 UTC
Created attachment 7862 [details]
Requested log

I zipped it otherwise it would be 1 mb long
Comment 3 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-02 19:13:00 UTC
did you change your use flags/cflags/cxxflags after you compiled rc6 and before you compiled 3.1? 
please try with CFLAGS="" and CXXFLAGS="" 
Comment 4 Francisco León 2003-02-02 19:22:53 UTC
of course not, everything is the same, well i dont know if between rc6 and final something new in portage showed up (like a new gcc release?) but the flags and hardware is the same.
Comment 5 Francisco León 2003-02-03 00:26:51 UTC
I tried compiling myself auth.c without my flag, but since i didn't want to lose 4 hours seeing this, i just edited auth.c in kdebase/backend/ and removed the march=athlon-xp -O3 -pipe -mmmx -msse -m3dnow -mfpmath=sse -fomit-frame-pointer so it would compile without them , now i go inside kdebase and type make, and i get:

gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I.     -DHAVE_GETUSERSHELL -DUSE_SYSLOG -DUSE_PAM -DXDMCP -ansi -W -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -DNDEBUG -O2 -D_GNU_SOURCE -c `test -f 'auth.c' || echo './'`auth.c
auth.c: In function `ConvertAuthAddr':
auth.c:678: dereferencing pointer to incomplete type
auth.c:678: warning: implicit declaration of function `htonl'
auth.c: In function `writeLocalAuth':
auth.c:995: warning: unused variable `fd'
/usr/include/bits/socket.h: At top level:
auth.c:854: warning: `DefineSelf' defined but not used
make[3]: *** [auth.o] Error 1
make[3]: Leaving directory `/var/tmp/portage/kdebase-3.1/work/kdebase-3.1/kdm/backend'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/kdebase-3.1/work/kdebase-3.1/kdm'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/kdebase-3.1/work/kdebase-3.1'
make: *** [all] Error 2

the weird thing is that if i go manually inside that dir and compile just as above (without using make) i get the warnings and i dont get the error, but i also dont get auth.o

I dont get it :(
Comment 6 Dan Armak (RETIRED) gentoo-dev 2003-02-03 14:23:06 UTC
"auth.c:678: dereferencing pointer to incomplete type" is the error (it's not a warning) and is 
the reason for the failure... 
Comment 7 Francisco León 2003-02-03 15:18:11 UTC
Yeah, but i wonder why if it is an error, then it continues and checks the other function lower in the source code.

Dan Armak, i hope you can pull some strings with the kde guys, i tried contacting them, havent got an answer, tried the forums too.

Should i emerge the masked gcc build? Some other guys have had different problems with kde 3.1 and that has fixed it for them.

What about this ccache thing i hear about?

The function giving trouble is:

static int ConvertAuthAddr (XdmcpNetaddr saddr, int *len, char **addr)
{
    int ret;
    ret = ConvertAddr(saddr, len, addr);
    if (ret == FamilyInternet && (struct in_addr *)*addr->adr == htonl(0x7F000001L)) (this is the line making trouble)
    ret = FamilyLocal;
    return ret;
}
Comment 8 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-03 15:34:12 UTC
ccache seems to have sometimes broken files in his cache. but the error is different, 
so i don't think it is your problem here. 
Comment 9 Francisco León 2003-02-03 15:59:39 UTC
kde-devel mailing list have some answers
from http://lists.kde.org/?l=kde-devel&m=103600827424162&w=2
that indicates a seriously breoken build.

>> remove the line containing "imake" from config.cache (its contents are
>> probably empty in your case) and re-run configure.
>> 
>> if it still does not work, check the contents of the XDM_CFLAGS variable
>> in the generated makefiles - it should be a rather long line. the imake
>> line in config.cache should contain _almost_ the same.
>> 

>It works now. But I had to add   #include <netinet/in.h> to auth.c
>and change (in daemon.c)  setpgrp (0, getpid()); to setpgrp();

However:
-auth.c had already netinet/in.h
-daemon.c shows:
#ifndef CSRG_BASED
#if defined(SYSV) || defined(SVR4) || defined(__QNXNTO__)
  setpgrp();
else
  setpgrp (0, getpid());
#endif

i dont have config.cache anywhere in the kdebase tree
XDM_CFLAGS shows: -DHAVE_GETUSERSHELL -DUSE_SYSLOG _DUSE_PAM -DXDMCP
Comment 10 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-05 16:55:22 UTC
well, it would be best if you run the script described in that mail: 
http://lists.kde.org/?l=kde-devel&m=103600898024991&w=2 
and send the output to ossi at kde dot org (feel free to Cc kde@gentoo.org 
and also include the URI of this bug). 
 
my XDM_CFLAGS are: -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L 
-D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE 
-DUNIXCONN -DTCPCONN -DOSMAJORVERSION=2 -DOSMINORVERSION=4 
-DFRAGILE_DEV_MEM -DDEV_RANDOM -DHAS_MKSTEMP -DHAVE_GETUSERSHELL 
-DUSE_SYSLOG -DUSE_PAM -DXDMCP 
 
thanks. 
Comment 11 Francisco León 2003-02-05 17:21:53 UTC
I dont understand, i download the file and run it from var/tmp/portage/kdebase-3,1-r1/work/kdebase-3.1 and i get that i cannot run that with a Makefile around, so i do a make distclean to delete all of them and i run that script, and now i get a file called Imakefile with exactly the same contents as the script you mentioned except for the #/bin/sh part

Does that mean i need to start compiling once that file is already made? How do i resume emerge kdebase without it trying to start from the beginning?
Comment 12 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-05 17:37:56 UTC
Created attachment 7964 [details]
script
Comment 13 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-05 17:41:50 UTC
i attached the script, please save it in your home, run 'sh script >& script.log' and attach 
script.log here. 
 
the script doesn't fix kdebase compilation, it also generates some output which is 
computer-dependent. 
 
to resume a merge, do ebuild /path/to/ebuild qmerge. 
Comment 14 Francisco León 2003-02-05 18:05:55 UTC
Created attachment 7966 [details]
Log requested

here it goes, my xdcmp line is really short
Comment 15 Francisco León 2003-02-05 20:05:21 UTC
I had a premonition, i recompiled X and after doing so kdebase compiled fine.

When i uninstalled rc6 it deleted some X files like host.def (which i replaced with a generic one), but maybe kde took it to configure some stuff and caused the compiler errors.

Sorry for being such a pain... Sorry!
Please close bug, although i would really like to know why uninstalling kde makes some X files get erased.
Comment 16 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-05 20:10:50 UTC
np, will mark as fixed :) 
if you unmerge kde it shouldn't remove any xfree files. (this should never happen!)