Seems that GCC 3.3.1 has problems with lilo 22.5.7.2, problems about "illegal label"(!?) Reproducible: Always Steps to Reproduce: 1. emerge gcc 3.3.1-r1 2. emerge lilo 22.5.7.2 Actual Results: [SNIP] cc -c -O2 -Wall -g -DLILO=0x4897777b `( if [ -r $ROOT/etc/lilo.defines ]; then cat $ROOT/etc/lilo.defines; else echo -DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL; fi ) | sed 's/-D/-DLCF_/g'` edit.c geometry.h:67: warning: array `max_partno' assumed to have one element echo "#define CFLAGS \"" -O2 -Wall -g -DLILO=0x4897777b `( if [ -r $ROOT/etc/lilo.defines ]; then cat $ROOT/etc/lilo.defines; else echo -DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL; fi ) | sed 's/-D/-DLCF_/g'` "\"" >flags.i grep -v "0x" <Makefile >_TmP_ for i in boot.c bsect.c cfg.c common.c device.c edit.c geometry.c identify.c lilo.c map.c partition.c probe.c raid.c shs2.c temp.c bdata.h bitmap.h boot.h bsect.h cfg.h common.h config.h device.h edit.h geometry.h identify.h lilo.h loader.h map.h md-int.h partition.h probe.h raid.h shs2.h temp.h version.h vesainfo.h ; do cat $i >>_TmP_ ; done echo "#define CSOURCE " `./version _TmP_` >>flags.i rm -f _TmP_ as86 -0 -a -w -l first.lis -o first.o first.s 00033 00000000> S ***** illegal label..............................^ 00046 00000000> S ***** illegal label..............................^ 00033 00000000> S ***** illegal label..............................^ 00046 00000000> S ***** illegal label..............................^ 00002 errors 00000 warnings make: *** [first.o] Error 1 make: *** Waiting for unfinished jobs.... !!! ERROR: sys-apps/lilo-22.5.7.2 failed. !!! Function src_compile, Line 53, Exitcode 2 !!! (no error message) Expected Results: Compile properly... :) Portage 2.0.49-r3 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r1, 2.4.20-gentoo-r5) ================================================================= System uname: 2.4.20-gentoo-r5 i686 AMD Duron(tm) Processor ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon -O9 -pipe" 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" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=athlon -O9 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://gentoo.linux.no/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://ftp.easynet.nl/mirror/gentoo/ http://ftp.easynet.nl/mirror/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 apm crypt encode jpeg libwww mad mmx mpeg ncurses nls oggvorbis pdflib png quicktime sdl spell truetype xml2 zlib gdbm berkdb slang readline java gpm tcpd pam ssl perl python ldap aalib acpi curl dedicated dnd ethereal faad ipv6 jikes junit maildir mbox md5sum mysql objc samba snmp usb xml -oss -arts -avi -cups -foomaticdb -gif -gtk -imlib -kde -gnome -libg++ -mikmod -motif -opengl -qt -svga -X -xmms -xv"
what version of bin86 ? `qpkg -I -v bin86` that pkg provides as86
I installed w/ gcc-3.3.1 and lilo compiled fine. Updated to gcc-3.3.1-r1 when it was added and now I can't compile lilo. I have bin86-0.16.11-r1
Created attachment 17403 [details, diff] Patch to make lilo compile with gcc-3.3.1-r1 I've fixed this and made a patch (attached) - however this does not appear to be a lilo problem, but rather a problem with the GCC preprocessor - see what the patch actually changes to see what I mean. The patch could change to put something other than "." on the end of the lines, but basically any _comment_ line ending with ".S" (and optionally any whitespace) causes the problem. Save the patch as sys-apps/lilo/files/lilo-22.5.7.2-gcc331.patch, then modify lilo-22.5.7.2.ebuild, adding: # GCC also introduces some problems in the 3.3.1-r1 ebuild, fix it: cd ${S}; epatch ${FILESDIR}/${PN}-22.5.7.2-gcc331.patch right after where it applies the glibc-2.3.3 patch (about line 40). Also note that this bug affects versions of lilo prior to 22.5.7.2 with gcc-3.3.1-r1.
The preprocessor in 3.3.1-r1 is borked. I have an ebuild that reverts a patch or two that also fix this, and until further word if the 'new' preprocessor output is correct, I will rather go with that.
*** Bug 28680 has been marked as a duplicate of this bug. ***
Should compile with gcc-3.3.1-r2 again.
*** Bug 29245 has been marked as a duplicate of this bug. ***
This bug is NOT fixed, IMO: cc -c -O2 -Wall -g -DLILO=0x4897777b `( if [ -r $ROOT/etc/lilo.defines ]; then cat $ROOT/etc/lilo.defines; else echo - DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVI RTUAL; fi ) | sed 's/-D/-DLCF_/g'` edit.c echo "#define CFLAGS \"" -O2 -Wall -g -DLILO=0x4897777b `( if [ -r $ROOT/etc/lilo.defines ]; then cat $ROOT/etc/lilo.d efines; else echo -DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DONE_SHOT -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_C HAIN -DVERSION -DVIRTUAL; fi ) | sed 's/-D/-DLCF_/g'` "\"" >flags.i grep -v "0x" <Makefile >_TmP_ for i in boot.c bsect.c cfg.c common.c device.c edit.c geometry.c identify.c lilo.c map.c partition.c probe.c raid.c s hs2.c temp.c bdata.h bitmap.h boot.h bsect.h cfg.h common.h config.h device.h edit.h geometry.h identify.h lilo.h load er.h map.h md-int.h partition.h probe.h raid.h shs2.h temp.h version.h vesainfo.h ; do cat $i >>_TmP_ ; done as86 -0 -a -w -l first.lis -o first.o first.s 00033 00000000> S ***** illegal label..............................^ 00046 00000000> S ***** illegal label..............................^ 00033 00000000> S ***** illegal label..............................^ 00046 00000000> S ***** illegal label..............................^ 00002 errors 00000 warnings make: *** [first.o] Error 1 make: *** Waiting for unfinished jobs.... echo "#define CSOURCE " `./version _TmP_` >>flags.i make: *** Waiting for unfinished jobs.... rm -f _TmP_ make: *** Waiting for unfinished jobs.... !!! ERROR: sys-apps/lilo-22.5.7.2 failed. !!! Function src_compile, Line 53, Exitcode 2 !!! (no error message) * sys-devel/gcc Latest version available: 3.3.1-r1 Latest version installed: 3.3.1-r1 Size of downloaded files: 23,361 kB Homepage: http://www.gnu.org/software/gcc/gcc.html Description: The GNU Compiler Collection. Includes C/C++ and java compilers Portage 2.0.49-r5 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r1, 2.6.0-test5) ================================================================= System uname: 2.6.0-test5 i686 AMD Athlon(tm) XP 1800+ ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /opt/tomcat/conf /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo/ http://gentoo.noved.org/ http://ftp.belnet.be/mirror/rsync.gentoo.org/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="apm foomaticdb libg++ gdbm berkdb aalib svga mysql tcpd 3dnow acpi -alsa -arts avi cdr crypt cups curl dga dvd emacs encode esd gd gif gnome gphoto2 gpm -gtk gtk2 gtkhtml imap imlib ipv6 java jpeg kde kerberos libwww mad mikmod mmx motif mozilla mpeg ncurses oggvorbis opengl oss pam -pda -pcmcia pdflib perl png python qt quicktime readline samba -nls scanner sdl slang slp socks5 spell sse ssl tcltk tetex tiff truetype usb wmf wxwindows X Xaw3d xml xml2 xmms xv zlib x86" It is still broken and will not compile. gcc-3.3.1-rc2 fixes it, yes, but that package and gcc-3.3.1-rc3 seem to be masked and the attatched patch has not been implemented.
This bug ought to be reopened, especially in light of 3.3.1-r2 being pulled almost immediately due to many other problems. Since this is _the_ ~x86 version of GCC, can you at least apply my patch (which DOES fix the problem) until an unmasked, fixed version of GCC comes out - or at the very least, reopen the bug?
gcc-3.3.1-r3 is now an available update and lilo now compiles. Definately fixed.
confirmed. Thank you. [ebuild R ] sys-apps/lilo-22.5.7.2 [ebuild R ] sys-devel/gcc-3.3.1-r3
Comment on attachment 17403 [details, diff] Patch to make lilo compile with gcc-3.3.1-r1 A word to the wise - although the patch above does make lilo compile, the compiled lilo will end up completely broken - to the point that it won't write the boot sector, but _appears_ successful (i.e. no errors). I recommend anyone who _did_ apply the patch to re-emerge lilo with an updated gcc (e.g. 3.3.1-r3), or else you may end up banging your head against the wall the next time you try to install a new kernel.