Doug Summers <[EMAIL PROTECTED]> writes: > Simon J Mudd wrote: > > >>> ( cd obj > >>> %{l_make} %{l_mflags} install \ > >>> INSTALL="%{l_shtool} install -c" \ > >>> DESTDIR=$RPM_BUILD_ROOT > >>> ) || exit $? > >>> # cleanup installation tree > >>> mv $RPM_BUILD_ROOT%{l_prefix}/lib/lib*.a \ > >>> $RPM_BUILD_ROOT%{l_prefix}/lib/gcc%{V_comp}-lib/${triple}/%{V_full}/ > >>> for multilib in `$RPM_BUILD_ROOT%{l_prefix}/bin/gcc > >>> --print-multi-lib`; do > >>> subdir=`echo "$multilib" | sed -e 's/;.*$//'` > >>> [ ".$subdir" = .. ] && continue > >>> mv $RPM_BUILD_ROOT%{l_prefix}/lib/$subdir/lib*.a \ > >>> > >>> $RPM_BUILD_ROOT%{l_prefix}/lib/gcc%{V_comp}-lib/${triple}/%{V_full}/$subdir/ > >>> rm -rf $RPM_BUILD_ROOT%{l_prefix}/lib/$subdir > >>> done > >>> ... > >>>The mv above is failing. > >>>The %install section is used to "copy" the correctly built software > >>>into the "right location" for the final package. The directory tree > >>>has a temporary prefix $RPM_BUILD_ROOT, but everything is otherwise > >>>ok. It looks like the gcc "libraries" are being "relocated" because > >>>they can NOT be put in /lib,/usr/lib on the target platform, and are > >>>so put under %{l_prefix}. > >>>The question really comes down to is "where are the lib*.a files" as > >>>if the mv fails they are NOT in the expected location of > >>>$RPM_BUILD_ROOT%{l_prefix}/lib/lib*.a. > >>>I'll see if I can get the compile to run on a box I have access to > >>>and > >>>see where the libraries really are. > >>>Regards, > >>>Simon > >>>______________________________________________________________________ > >>>The OpenPKG Project www.openpkg.org > >>>User Communication List openpkg-users@openpkg.org > >> > >>The only reason the mv is failing is because an earlier cleanup killed > >>the parent directory. The pthread directory is being removed before > >>the pthread/power files are moved. > > In that case the evaluation of > > `$RPM_BUILD_ROOT%{l_prefix}/bin/gcc --print-multi-lib` > > seems to be providing the directory list in the wrong order and some > > libraries are getting removed before they are copied. > > That's what I think. Ralf must have written this and should know > > better. I'm pretty familiar with RPMs but have never looked at the > > gcc build process which is obviously non-trivial. > > I'm going to try building gcc 3.4 without binutils and if that fails > > (I think you said that it did not work) just try and build a normal > > gcc from the tar ball. The compiler running on my 5.1 box is > > $ gcc -v > > Reading specs from > > /opt/freeware/lib/gcc-lib/powerpc-ibm-aix5.1.0.0/3.3.2/specs > > Configured with: ../configure --with-as=/usr/bin/as --with-ld=/usr/bin/ld > > --disable-nls --enable-languages=c,c++ --prefix=/opt/freeware > > --enable-threads --enable-version-specific-runtime-libs > > --host=powerpc-ibm-aix5.1.0.0 > > Thread model: aix > > gcc version 3.3.2 > > I'd like to build a newer gcc. It's a shame that IBM don't provide > > the > > spec files for the rpms they provide on their website as maybe we > > could see what "tricks" they had to apply (if any) to get "their" gcc > > to build successfully. > > Regards, > > Simon > > ______________________________________________________________________ > > The OpenPKG Project www.openpkg.org > > User Communication List openpkg-users@openpkg.org > > Here's the .spec file for GCC 3.3.2:
[thanks] I'll see if I can determine what the AIX gcc build is doing compared to the openpkg gcc build. It's probably something simple which is causing the problem. Simon ______________________________________________________________________ The OpenPKG Project www.openpkg.org User Communication List openpkg-users@openpkg.org