Austin, as I just wrote you in private mail, I'm trying another build because I found some funnies in my "alternatives" system. But I'll comment on your remarks below, nonetheless.
Austin Acton :: On Tue, 2003-01-07 at 23:26, Dean S. Messing wrote: :: > No it is getting created during the build. I discovered, also, :: > that after the build bomb-out one finds in :: > /var/tmp/gcc-3.2.1-root/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.1/include/ :: > a `root/' directory in which there is both a usr/ subdir and an etc/ :: > subdir. :: :: This is normal. This is the buildroot directory. It's where RPM gets :: the files to put into the package. I'm not sure you read the above carefully (or maybe I was not clear): I know about the buildroot directory in /var/tmp (and the little shell rpm.tmp.#### script in /var/tmp assocaiated to it. My point was the existence of the root/etc directory in /var/tmp/gcc-3.2.1-root/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.2.1/include/ On the machine (my laptop) for which the build goes through, this directory is _not_ present. Only root/usr. :: > The lines I suspected of creating the alternative stuff :: > were: :: > :: > %if %{build_java} :: > %post -n libgcj%{libjava_major}-devel :: > update-alternatives --install %{_includedir}/libgcj libgcj :%{_includedir}/libgcj-%{version} %{gcj_alternative_priority} :: > %endif :: :: These lines are executed at install-time, not compile time. I know. I probably was sloppy in my terminolgy if I said "compile" when I should have said "build". I do realise the problem is occuring during "installation" into the buildroot. That's how come I was able to "fix" it. :: > Didn't try, but I seriously doublt it because the .spec file :: > contains the explicit `ln -s' commands that cause the failure. :: :: ln -s is not causing the failure. The failure is caused by said :: symbolic link already existing. Which is why Todd and I both had the :: initial question: are you 100% sure your buildroot was empty? ls -s "exposing" the failure. The existence of the link is "causing" the failure. Sorry, again for my impreciseness. :: > I did discover two differences between the system on which it :: > builds and the one on which it does not. :: > The working system had a stock Mdk 9.0 installation of gcc-3.2-1mdk.i586.rpm. :: > The non-working system had a re-build of the cooker gcc-3.2 from :: > around Nov 25th. built for an athlon-mp. (This was necessary to :: > get MPlayer to compile). :: :: Again leads me to believe that the symlink was leftover from that build. Please trust me (you and I have both heard that before). I know how to make sure there are no leftovers. And there are none. Each build is clean. I have even deleted the the unpacked sources and the spec file and done rpm -i on the .src.rpm a couple of times "just in case". :: > I did "solve" the problem by deleting the link and root/etc/ directories :: > deep down in the /usr/src/RPM/BUILD/gcc-3.2.1 (again, sorry :: > for not remembering exactly where) :: :: You mean /var/tmp/gcc-3.2.1-buildroot/etc. No I (think) I mean in the BUILD dir. After deleting the root/etc/ and the bogus link in /usr/src/RPM/BUILD/gcc-3.2.1/obj-athlon-mandrake-linux-gnu/gcc/include I also deleted the buildroot in /var/tmp as well as the rpm.tmp.#### file, and did rpm --short-circuit -bi gcc.spec and it rebuild the buildroot and generated the .rpm files This was couple of days ago and so I hope I am not experiencing a case of "I dreamed that I did it" :-) :: > So when I find bugs is it OK to report them here as I did? :: :: Yes. Although this wasn't technically a 'bug'. Ok. :: > Shall I assume they will get seen even if there's no ack? :: :: They will get seen. But it's always possible that nobody will have time :: to work on it. :: :: > If someone instructs me on what, exactly, to do to trace this :: > I'll do it. Problem is that now that I have installed the :: > latest gcc the bug may vanish, if it had anything to do :: > with the above machine differences. :: :: Do this: :: # rm -fr /var/tmp/*root Have done this each time. :: # rm -fr /usr/src/RPM/BUILD/* As well as this. :: # rm -fr /usr/src/RPM/tmp/* /usr/src/RPM/tmp does not nor ever has existed on my system. :: before you try to build anything, and you won't have any problems like :: this. I wish. Dean