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

Reply via email to