On 5 April 2018 at 19:12, Thanos Baloukas <baloukast...@sch.gr> wrote:
> On 05/04/2018 12:38 μμ, Νίκος Λαμπόβας wrote: > >> On 25 February 2018 at 11:35, Thanos Baloukas <baloukast...@sch.gr >> On 02/25/2018 10:58 AM, Νίκος Λαμπόβας wrote: >> >> Thank you for the quick answer. >> As said in the email subject the book is LFS, the version is >> 7.10 and the Host is a virtual machine with Ubuntu 12.04 LTS. >> The Oracle VM Virtualbox is running on Windows 10. >> >> ... > snip > ... > >> >> when running make in 6.40 in Perl i get the following >> error a >> lot of times: >> >> sh: error while loading shared libraries: >> libreadline.so.6: >> cannot open shared object file: No such file or directory >> >> Before running make for 6.33 Bash this was the output >> of ldconfig: >> >> ldconfig -p | grep libreadline >> libreadline.so.6 (libc6) => /lib/libreadline.so.6 >> libreadline.so (libc6) => /usr/lib/libreadline.so >> >> After running make of 6.33 Bash i executed "exec >> /bin/bash >> --login +h" as the doc says the new bash with readline >> was in place. >> >> root:/# echo $0 >> /bin/bash >> root:/# ldd /bin/bash >> linux-gate.so.1 (0xb77c7000) >> libreadline.so.6 => /lib/libreadline.so.6 >> (0xb7783000) >> libhistory.so.6 => /lib/libhistory.so.6 >> (0xb7778000) >> libncursesw.so.6 => /lib/libncursesw.so.6 >> (0xb770d000) >> libdl.so.2 => /lib/libdl.so.2 (0xb7708000) >> libc.so.6 => /lib/libc.so.6 (0xb7551000) >> /tools/lib/ld-linux.so.2 (0xb77c8000) >> >> >> At that point the loader should be the one from /lib and not from >> /tools/lib . Perhaps you did not do >> mv -vf /usr/bin/bash /bin >> on bash installation and /bin/bash is still a link to /tools/bin/bash >> which was created on 'Creating Essential Files and Symlinks'. >> In chroot do >> ls -l /bin/bash /bin/sh >> >> > >> Hi thanos, "xronia polla" (greek wishes for easter holidays) >> >> Hi Nikos, "xronia polla" > > Firstly, is there a reason you are installing the outdated LFS 7.10 > and not the latest 8.2? i started lfs when lfs 7.10 was the new version but i postponed it in order to build it parallel to my OS course of NTUA Did you check carefully with version-check.sh > bash, version 4.2.25(1)-release /bin/sh -> /bin/bash Binutils: (GNU Binutils for Ubuntu) 2.22 bison (GNU Bison) 2.5 /usr/bin/yacc -> /usr/bin/bison.yacc bzip2, Version 1.0.6, 6-Sept-2010. Coreutils: 8.13 diff (GNU diffutils) 3.2 find (GNU findutils) 4.4.2 GNU Awk 4.1.1, API: 1.1 (GNU MPFR 3.1.0-p3, GNU MP 5.0.2) /usr/bin/awk -> /usr/bin/gawk gcc (Ubuntu/Linaro 4.7.3-2ubuntu1~12.04) 4.7.3 g++ (Ubuntu/Linaro 4.7.3-2ubuntu1~12.04) 4.7.3 (Ubuntu EGLIBC 2.15-0ubuntu10.6) 2.15 grep (GNU grep) 2.10 gzip 1.4 Linux version 3.13.0-32-generic m4 (GNU M4) 1.4.16 GNU Make 3.81 patch 2.6.1 Perl version='5.14.2'; GNU sed version 4.2.1 tar (GNU tar) 1.26 makeinfo (GNU texinfo) 4.13 xz (XZ Utils) 5.1.0alpha g++ compilation OK > if your ubuntu host fulfills the host system requirements? > > I have built lfs all over again until "6.40 perl" for watching all >> warnings and possible package errors. >> The commands you mentioned on 'Creating Essential Files and Symlinks' >> were executed successfully. >> Also there is no reference of 'tools' in gcc specs file on ' Adjusting >> the toolchain' and all debug messages >> for program interpreter are mention /lib/ld-linux.so.2 and not >> /tools/lib/ld-linux.so.2. >> A strange thing i have noticed is that all binaries of the packages >> before 6.17 GCC-6.2.0, have correct paths >> on ldd command. For example: >> >> ldd /usr/bin/file >> linux-gate.so.1 (0xb773a000) >> libmagic.so.1 => /usr/lib/libmagic.so.1 (0xb7710000) >> libz.so.1 => /lib/libz.so.1 (0xb76f5000) >> libc.so.6 => /lib/libc.so.6 (0xb753e000) >> /lib/ld-linux.so.2 (0xb773b000) >> >> But after GCC-6.2.0 all the libraries point to 'tools'. For example: >> >> ldd /bin/bzip2 >> linux-gate.so.1 (0xb7747000) >> libbz2.so.1.0 => not found >> libc.so.6 => /tools/lib/libc.so.6 (0xb758e000) >> /tools/lib/ld-linux.so.2 (0xb7748000) >> >> When i execute "LD_DEBUG=libs ldd /usr/bin/file" a binary compiled before >> GCC-6.2.0 i find that it searches >> in the beginning the system path that refers to a directory relative to >> "tools". >> >> LD_DEBUG=libs ldd /usr/bin/file >> 11241: find library=libdl.so.2 [0]; searching >> 11241: search cache=/tools/etc/ld.so.cache >> 11241: search path=/tools/lib/tls/i686/sse2: >> /tools/lib/tls/i686:/tools/lib/tls/sse2:/tools/lib/tls:/tool >> s/lib/i686/sse2:/tools/lib/i686:/tools/lib/sse2:/tools/lib >> (system search path) >> 11241: trying file=/tools/lib/tls/i686/sse2/libdl.so.2 >> 11241: trying file=/tools/lib/tls/i686/libdl.so.2 >> 11241: trying file=/tools/lib/tls/sse2/libdl.so.2 >> 11241: trying file=/tools/lib/tls/libdl.so.2 >> 11241: trying file=/tools/lib/i686/sse2/libdl.so.2 >> 11241: trying file=/tools/lib/i686/libdl.so.2 >> 11241: trying file=/tools/lib/sse2/libdl.so.2 >> 11241: trying file=/tools/lib/libdl.so.2 >> 11241: >> 11241: find library=libc.so.6 [0]; searching >> 11241: search cache=/tools/etc/ld.so.cache >> 11241: search path=/tools/lib (system search path) >> 11241: trying file=/tools/lib/libc.so.6 >> 11241: >> 11241: calling init: /tools/lib/libc.so.6 >> 11241: calling init: /tools/lib/libdl.so.2 >> 11241: initialize program: /bin/bash >> 11241: transferring control: /bin/bash >> 11241: >> 11241: find library=libnss_files.so.2 [0]; searching >> 11241: search cache=/tools/etc/ld.so.cache >> 11241: search path=/tools/lib (system search path) >> 11241: trying file=/tools/lib/libnss_files.so.2 >> 11241: >> 11241: calling init: /tools/lib/libnss_files.so.2 >> 11244: calling fini: /bin/bash [0] >> 11244: calling fini: /tools/lib/libdl.so.2 [0] >> 11244: calling fini: /tools/lib/libnss_files.so.2 [0] >> 11244: >> 11245: find library=libmagic.so.1 [0]; searching >> 11245: search cache=/etc/ld.so.cache >> 11245: trying file=/usr/lib/libmagic.so.1 >> . >> . >> . >> >> How can i fix this? >> >> > What is the output of > ls -l /usr/bin/ldd > and > echo $PATH > in chroot? If /tools/bin precedes /usr/bin you are executing > /tools/bin/ldd > This is the output: root:/build_lfs_scripts# ls -l /usr/bin/ldd -rwxr-xr-x 1 root root 5858 Mar 9 16:50 /usr/bin/ldd root:/build_lfs_scripts# echo $PATH /bin:/usr/bin:/sbin:/usr/sbin:/tools/bin > > If the above are ok and you are absolutely sure that ALL the sanity > checks on 6.10 Adjusting the Toolchain this is the output: '/tools/bin/ld' -> '/tools/bin/ld-old' '/tools/i686-pc-linux-gnu/bin/ld' -> '/tools/i686-pc-linux-gnu/bin/ld-old' '/tools/bin/ld-new' -> '/tools/bin/ld' '/tools/i686-pc-linux-gnu/bin/ld' -> '/tools/bin/ld' [Requesting program interpreter: /lib/ld-linux.so.2] /usr/lib/crt1.o succeeded /usr/lib/crti.o succeeded /usr/lib/crtn.o succeeded #include <...> search starts here: /usr/include SEARCH_DIR("=/tools/i686-pc-linux-gnu/lib32") SEARCH_DIR("/usr/lib") SEARCH_DIR("/lib") SEARCH_DIR("=/tools/i686-pc-linux-gnu/lib"); attempt to open /lib/libc.so.6 succeeded found ld-linux.so.2 at /lib/ld-linux.so.2 removed 'dummy.c' removed 'a.out' removed 'dummy.log' there is a reference of tools here but is accepted according to this log http://lfs.phayoune.org/lfs/build-logs/8.1-rc1/pentium4/logs/077-adjusting (on version 7.10 there is no log for 6.10 section) Also the specs file for 6.10 section in the dir ( /tools/lib/gcc/i686-pc-linux-gnu/6.2.0/specs) has this entry for the linker %{muclibc:/lib/ld-uClibc.so.0;:%{mbionic:/system/bin/linker;:%{mmusl:/lib/ld-musl-i386.so.1;:/lib/ld-linux.so.2}}} which is correct but for the gcc in 6.17 there's no such modification and no specs file. and 6.17 GCC-6.2.0 were/are > as the book says, /usr/lib/gcc/i686-pc-linux-gnu/6.2.0/../../../crt1.o succeeded /usr/lib/gcc/i686-pc-linux-gnu/6.2.0/../../../crti.o succeeded /usr/lib/gcc/i686-pc-linux-gnu/6.2.0/../../../crtn.o succeeded #include <...> search starts here: /usr/lib/gcc/i686-pc-linux-gnu/6.2.0/include /usr/local/include /usr/lib/gcc/i686-pc-linux-gnu/6.2.0/include-fixed /usr/include SEARCH_DIR("/usr/i686-pc-linux-gnu/lib32") SEARCH_DIR("/usr/local/lib32") SEARCH_DIR("/lib32") SEARCH_DIR("/usr/lib32") SEARCH_DIR("/usr/i686-pc-linux-gnu/lib") SEARCH_DIR("/usr/local/lib") SEARCH_DIR("/lib") SEARCH_DIR("/usr/lib"); attempt to open /lib/libc.so.6 succeeded found ld-linux.so.2 at /lib/ld-linux.so.2 removed 'dummy.c' removed 'a.out' removed 'dummy.log' > then maybe you missed something when rebooted and > restarted the installation. I have never rebooted because i always revert to the snapshot i want in the virtual machine > The critical points are listed in > 2.3 Building LFS in Stages. It may be related to installing on a virtual > machine, I have never done that. > > -- > Thanos > -- > http://lists.linuxfromscratch.org/listinfo/lfs-support > FAQ: http://www.linuxfromscratch.org/blfs/faq.html > Unsubscribe: See the above information page > > Do not top post on this list. > > A: Because it messes up the order in which people normally read text. > Q: Why is top-posting such a bad thing? > A: Top-posting. > Q: What is the most annoying thing in e-mail? > > http://en.wikipedia.org/wiki/Posting_style >
-- http://lists.linuxfromscratch.org/listinfo/lfs-support FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page Do not top post on this list. A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? http://en.wikipedia.org/wiki/Posting_style