Summary: | mysql-4.0.20 ebuild fails compilation | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Brian C. Dilley <brian> |
Component: | New packages | Assignee: | Gentoo Linux MySQL bugs team <mysql-bugs> |
Status: | RESOLVED INVALID | ||
Severity: | blocker | ||
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Brian C. Dilley
2004-05-28 20:26:41 UTC
I had distcc turned on, when i turned it off i no longer experienced this problem. Reopen please! Turning distcc off did NOT work for me. Got the same error message (Waiting for unfinished jobs....) until I used MAKEOPTS="-j1". Now I'm getting the following error: In file included from item.h:476, from mysql_priv.h:311, from thr_malloc.cc:20: item_cmpfunc.h: In member function `virtual Item::cond_result Item_func_ne::eq_cmp_result() const': item_cmpfunc.h:36608: error: Fehler beim Parsen before `;' token make[4]: *** [thr_malloc.o] Fehler 1 make[4]: Leaving directory `/var/tmp/portage/mysql-4.0.20/work/mysql-4.0.20/sql' make[3]: *** [all-recursive] Fehler 1 make[3]: Leaving directory `/var/tmp/portage/mysql-4.0.20/work/mysql-4.0.20/sql' make[2]: *** [all] Fehler 2 make[2]: Leaving directory `/var/tmp/portage/mysql-4.0.20/work/mysql-4.0.20/sql' make[1]: *** [all-recursive] Fehler 1 make[1]: Leaving directory `/var/tmp/portage/mysql-4.0.20/work/mysql-4.0.20' make: *** [all] Fehler 2 The error in line 36608 is quite funny, as item_cmpfunc.h is only 653 lines large. I'm compiling on an AMD K6/2 400 with 256 MB RAM, 512 MB swap and 4,5 GB HD free. I watched the output of 'top' during my latest attempt and it didn't even swap once at all. So I would assume 256 MB is enough, but why doesn't it compile? gs-sources-2.4.25_pre7-r8 linux-headers-2.4.19-r1 AND (?) linux-headers-2.4.21-r1 gcc-3.3.3-r6 glibc-2.3.3.20040420 emerge info: Portage 2.0.50-r9 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.4.25_pre7-gss-r8) ================================================================= System uname: 2.4.25_pre7-gss-r8 i586 AMD-K6(tm) 3D processor Gentoo Base System version 1.4.16 distcc 2.13 i586-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=k6-2 -O2 -pipe" CHOST="i586-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=k6-2 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://horst.ranzbude.lan/wohnheim/data/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo http://gd.tuwien.ac.at/opsys/linux/gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://horst.ranzbude.lan/gentoo-portage" USE="3dnow acl apache2 apm berkdb crypt encode ethereal gdbm gif gpm gtk2 imlib java jpeg libg++ libwww maildir mbox mysql ncurses nls oggvorbis pam pdflib perl png prelude python readline sdl slang snmp socks5 spell ssl svga tcpd x86 xml2 zlib" stefan: please give the compiler error message in english! line 36608 refers to the pre-processed file. OK, sorry. Well a "Fehler" is an "error" and "Fehler beim Parsen" is a "parse error", thought that was rather obvious. ;-) As for the parse error, if I'm interpreting gcc's output correctly, it happens on line 143 of file item_cmpfunc.h. I can't see a problem there, as it's very similar to the previous functions in that file, which seem to compile well. 137 class Item_func_ne :public Item_bool_func2 138 { 139 public: 140 Item_func_ne(Item *a,Item *b) :Item_bool_func2(a,b) { } 141 longlong val_int(); 142 enum Functype functype() const { return NE_FUNC; } 143 cond_result eq_cmp_result() const { return COND_FALSE; } 144 optimize_type select_optimize() const { return OPTIMIZE_NONE; } 145 const char *func_name() const { return "<>"; } 146 }; Any ideas? Please... Success! All compiled well when I used distcc, but disabled localhost. The 256 MB RAM seemed to be the bottleneck, although it never tried to swap, which I find quite strange. i've seen GCC want and instanteous memory usage of 1.2Gb while compiling some of the MySQL source files with certain CFLAGS. It asks for a big whack (more than your RAM+SWAP) and the kernel tells it to go to hell, resulting in your failed build. Reducing CFLAGS or adding memory is the only way around it. I'm going to mark as invalid since it's your hardware. |