I try to follow the LFS 4.6 book as closely as possible. I had to
apply the following deviations:
- the host system has glibc-2.1.3 instead of the recommended
glibc-2.2.5. I broke several times my system, by trying to upgrade
glibc. Then I gave up and turned to LFS.
- replaced /usr/bin by /usr/local/bin in several commands because my
host system was upgraded from a 10-year old distribution to comply
with the LFS recommendations and the new binaries reside in /usr/local/
bin.
- didn't add the "echo "CFLAGS += -march=i486 -mtune=native" >
configparms" in section 5.7, because my system has no Intel processor;
- the name of my dynamic linker is "ld.so.1" instead of "ld-linux.so.2".
So far, I didn't consider using a newer version then the one used in
the LFS book (it takes about 30 hours to perform a bootstrap build of
gcc on my poor 100Mhz PowerPC 601…)
I didn't use particular CFLAGS for my hardware.
I still suspect a problem with mixed-up search paths…
pvg
Op 18-jul-09, om 21:54 heeft Justin P. Mattock het volgende geschreven:
Pol Vangheluwe wrote:
I was maybe not clear enough: I am not yet at chapter 6. I am doing
section 5.12, so no chrooting in the game.
I have some doubts about the manipulation of the
specs file in section 5.8. Nothing changed when I view with -
dumpspecs:
lfs:/lfs/sources/bash-3.2$ gcc -dumpspecs | grep ld.so.1
-m elf32ppclinux %{!shared: %{!static: %{rdynamic:-export-dynamic}
%{!dynamic-linker:-dynamic-linker %{muclibc:%{mglibc:%e-mglibc and
-muclibc used together}/lib/ld-uClibc.so.0;:/lib/ld.so.1}}}}
-m elf32ppclinux %{!shared: %{!static: %{rdynamic:-export-dynamic}
%{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}
while I find in the specs file itself the expected path:
lfs:/lfs/sources/bash-3.2$ cat
/lfs/tools/bin/../lib/gcc/powerpc-unknown-linux-gnu/4.3.2/specs |
grep
ld.so.1
-m elf32ppclinux %{!shared: %{!static: %{rdynamic:-export-dynamic}
%{!dynamic-linker:-dynamic-linker %{muclibc:%{mglibc:%e-mglibc and
-muclibc used together}/lib/ld-uClibc.so.0;:/tools/lib/ld.so.1}}}}
-m elf32ppclinux %{!shared: %{!static: %{rdynamic:-export-dynamic}
%{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}
Can this have something to do with my problem?
pvg
Op 16-jul-09, om 21:41 heeft Justin P. Mattock het volgende
geschreven:
Pol Vangheluwe wrote:
But why is it using /lib/libc.so.6 (from the original distribution)
instead of /lfs/tools/lib/libc.so.6?
pvg
Op 16-jul-09, om 16:11 heeft Justin P. Mattock het volgende
geschreven:
Pol Vangheluwe wrote:
I am trying to install LFS, edition 6.4 on an Apple PowerPC 7200
(indeed, an "old-world" Mac). I installed linux from the MkLinux
distribution R1 (yes, a very old distribution) and then
upgraded the
system to Linux 2.6 from
sources. I could not upgrade glibc without breaking the
system, so
it is still running glibc-2.1.3. This is the only requirement
for
the host system I could not fulfill.
lfs:/lfs/sources/gcc-build$ cat /etc/issue
Linux for PowerPC. Brought to you by The MkLinux Project.
Based on Red Hat Linux Red Hat Linux release 6.0 (Hedwig)
Kernel 2.6.26BuiltbySoftPol on a PowerPC 601
I have a problem, building gcc-4.3.2 in pass 2:
lfs:/lfs/sources/gcc-build$ ../gcc-4.3.2/configure --prefix=/
tools
--with-local-prefix=/tools --enable-clocale=gnu --enable-shared
--enable-threads=posix --enable-__cxa_atexit --enable-
languages=c,c++
--disable-libstdcxx-pch --disable-bootstrap
(…)
lfs:/lfs/sources/gcc-build$ make
(…)
# Now that we have built all the objects, we need to copy
# them back to the GCC directory. Too many things (other
# in-tree libraries, and DejaGNU) know about the layout
# of the build tree, for now.
make install-leaf DESTDIR=../.././gcc \
slibdir= libsubdir= MULTIOSDIR=.
make[3]: Entering directory
`/lfs/sources/gcc-build/powerpc-unknown-linux-gnu/libgcc'
/bin/sh ../../../gcc-4.3.2/libgcc/../mkinstalldirs ../.././gcc
/usr/local/bin/install -c -m 644 libgcc_eh.a ../.././gcc/
chmod 644 ../.././gcc/libgcc_eh.a
/tools/powerpc-unknown-linux-gnu/bin/ranlib ../.././gcc/
libgcc_eh.a
/bin/sh ../../../gcc-4.3.2/libgcc/../mkinstalldirs ../.././gcc;
/usr/local/bin/install -c -m 644 ./libgcc_s.so.1
../.././gcc/libgcc_s.so.1; rm -f ../.././gcc/libgcc_s.so; ln -s
libgcc_s.so.1 ../.././gcc/libgcc_s.so
rm: /lib/libc.so.6: version `GLIBC_2.2.4' not found (required by
/lfs/sources/gcc-build/./gcc/libgcc_s.so.1)
ln: /lib/libc.so.6: version `GLIBC_2.2.4' not found (required by
/lfs/sources/gcc-build/./gcc/libgcc_s.so.1)
make[3]: *** [install-shared] Error 1
make[3]: Leaving directory
`/lfs/sources/gcc-build/powerpc-unknown-linux-gnu/libgcc'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/lfs/sources/gcc-build/powerpc-unknown-linux-gnu/libgcc'
make[1]: *** [all-target-libgcc] Error 2
make[1]: Leaving directory `/lfs/sources/gcc-build'
make: *** [all] Error 2
I am surprised to see that there are still dependencies in this
phase
of the project on the host system...
lfs:/lfs/sources/gcc-build$ locate libc.so.6
/home/ftp/lib/libc.so.6
/lfs/tools/lib/libc.so.6
/lib/libc.so.6
lfs:/lfs/sources/gcc-build$ env
TERM=xterm-color
OLDPWD=/home/lfs
LC_ALL=POSIX
LFS=/mnt/lfs
PATH=/tools/bin:/usr/local/bin:/bin:/usr/bin
PWD=/lfs/sources/gcc-build
PS1=\u:\w\$
SHLVL=1
HOME=/home/lfs
_=/usr/local/bin/env
lfs:/lfs/sources/gcc-build$ locate bin/rm
/bin/rm
(…)
/usr/local/bin/rm
(…)
lfs:/lfs/sources/gcc-build$ locate bin/ln
/bin/ln
/usr/local/bin/ln
(…)
pvg
oops, after sending I realized you were not building
libc but gcc,(it early morning here).
The compiler is looking for glibc-2.2.4
So it can finish with compiling.
Justin P. Mattock
--
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page
My guess is you haven't set the chroot environment
correctly, causing gcc to look for certain libraries on the
host still instead of /tools/*
Justin P. Mattock
--
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page
Could be, have you considered using the latest gcc
instead of an older version?
over here I'm at 4.4.0(should be using 4.4.1)
Also are you compiling gcc with certain CFLAGS
so that the compiler matches your hardware?
Justin P. Mattock
--
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page
--
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page