Hi Ken,

The libgcc_s files should have been installed in $LFS/usr in gcc
> pass 2 at the end of chapter 6.  $LFS should be /mnt/lfs.  The only
> packages installed in /mnt/lfs/tools are binutils pass 1 and gcc
> pass 1.
>

That's interesting.  When I check the LFS users history, I find the
following commands:

```
lfs:~$ cat ~/.bash_history  | grep -- --enable-languages=c,c++
../configure                                           --target=$LFS_TGT
                               --prefix=$LFS/tools
       --with-glibc-version=2.11
 --with-sysroot=$LFS                                --with-newlib
                           --without-headers
   --enable-initfini-array                            --disable-nls
                             --disable-shared
    --disable-multilib
--disable-decimal-float                            --disable-threads
                           --disable-libatomic
   --disable-libgomp                                  --disable-libquadmath
                             --disable-libssp
    --disable-libvtv                                   --disable-libstdcxx
                               --enable-languages=c,c++
../configure
--build=$(../config.guess)                         --host=$LFS_TGT
                           --prefix=/usr
   CC_FOR_TARGET=$LFS_TGT-gcc
--with-build-sysroot=$LFS                          --enable-initfini-array
                           --disable-nls
   --disable-multilib
--disable-decimal-float                            --disable-libatomic
                           --disable-libgomp
   --disable-libquadmath                              --disable-libssp
                              --disable-libvtv
      --disable-libstdcxx
 --enable-languages=c,c++
```

No idea why yours is different, but I wonder if you have passed
> 'tools' to a different package (before 10.0 we put a lot of things
> in tools, now we DESTDIR to $LFS/usr).
>
For what it's worth here, I am using 10.0

I looked through all of the places I used destdir during temp toolchain
onwards.  I see the following:
```
lfs:~$ cat ~/.bash_history  | grep -- DESTDIR
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install
make DESTDIR=$LFS TIC_PATH=$(pwd)/build/progs/tic install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
./configure --prefix=/usr --host=$LFS_TGT && make -j8 && make DESTDIR=$LFS
install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install -j8
make -j8 && make DESTDIR=$LFS install -j8
make DESTDIR=$LFS install
make DESTDIR=$LFS install -j8
```

Don't seem to be any locations where `tool` is passed, and I have $LFS in
my /etc/environment (checked to make sure it is correctly set to `/mnt/lfs`)

When looking at chapter 6.18 (second pass of gcc) is the `--prefix=usr`
directive in configure be responsible for ensuring that the gcc shared libs
are installed correctly?

Additionally, is there any extra, helpful info that I could provide to
you?  I've proactively provided the contents of /usr, /lib, and /usr/lib.

```
lfs:~$ ls $LFS/usr
bin  include  lib  lib64  libexec  local  sbin share  src  var
 x86_64-lfs-linux-gnu
```

```
lfs:~$ ls $LFS/lib
firmware libbz2.so.1.0    libgcc_s.so        libmount.so.1.1.0
 libnss_db.so.2     libreadline.so.8    libutil-2.32.so
ld-2.32.so libbz2.so.1.0.8    libgcc_s.so.1      libmvec-2.32.so
libnss_dns-2.32.so     libreadline.so.8.0     libutil.so.1
ld-linux-x86-64.so.2 libc-2.32.so    libhistory.so.8    libmvec.so.1
 libnss_dns.so.2     libresolv-2.32.so    libuuid.so.1
libBrokenLocale-2.32.so  libc.so.6    libhistory.so.8.0  libncursesw.so.6
    libnss_files-2.32.so   libresolv.so.2    libuuid.so.1.3.0
libBrokenLocale.so.1 libcrypt-2.32.so   liblzma.so.5
libncursesw.so.6.2     libnss_files.so.2      librt-2.32.so    libz.so.1
libSegFault.so libcrypt.so.1    liblzma.so.5.2.5   libnsl-2.32.so
libnss_hesiod-2.32.so  librt.so.1    libz.so.1.2.11
libanl-2.32.so libdl-2.32.so    libm-2.32.so       libnsl.so.1
 libnss_hesiod.so.2     libsmartcols.so.1    libzstd.so.1
libanl.so.1 libdl.so.2    libm.so.6       libnss_compat-2.32.so
 libpcprofile.so     libsmartcols.so.1.1.0  libzstd.so.1.4.5
libblkid.so.1 libfdisk.so.1    libmemusage.so     libnss_compat.so.2
libpthread-2.32.so     libthread_db-1.0.so
libblkid.so.1.1.0 libfdisk.so.1.1.0  libmount.so.1      libnss_db-2.32.so
   libpthread.so.0     libthread_db.so.1
```

```
lfs:~$ ls $LFS/usr/lib
 Mcrt1.o      libbz2.a      libfl.so.2  libmenuw.so.6.2       libpython3.so
    libz.a
 Scrt1.o      libbz2.so      libfl.so.2.0.0  libmount.so
 libreadline.so     libz.so
 audit      libc.a      libformw.so 'libmount.so*'         libresolv.a
libzstd.so
 bash      libc.so      libformw.so.6  libmvec.a        libresolv.so
locale
 crt1.o      libc_nonshared.a      libformw.so.6.2  libmvec.so
 librt.a     perl5
 crti.o      libcrypt.a      libg.a  libncurses.so         librt.so
pkgconfig
 crtn.o      libcrypt.so      libgcc_s.so  libncursesw.so
 libsmartcols.so     python3.8
 expect5.45.4      libctf-nobfd.a      libgcc_s.so.1  libnss_compat.so
 libstdc++.a     sqlite3.30.1.2
 gawk      libctf-nobfd.so      libhistory.so  libnss_db.so
 libstdc++.so     tcl8
 gcc      libctf-nobfd.so.0       liblzma.la  libnss_dns.so
libstdc++.so.6     tcl8.6
 gconv      libctf-nobfd.so.0.0.0   liblzma.so  libnss_files.so
libstdc++.so.6.0.28     tclConfig.sh
 gcrt1.o      libctf.a     'liblzma.so*'  libnss_hesiod.so      libstdc++.
so.6.0.28-gdb.py   tclooConfig.sh
 itcl4.2.0      libctf.so      libm-2.32.a  libopcodes-2.35.so
 libstdc++fs.a     tdbc1.1.1
 libBrokenLocale.a    libctf.so.0      libm.a  libopcodes.a
 libsupc++.a     tdbcmysql1.1.1
 libBrokenLocale.so   libctf.so.0.0.0      libm.so  libopcodes.so
libtcl8.6.so     tdbcodbc1.1.1
 libanl.a      libdl.a      libmagic.la  libpanelw.so
 libtclstub8.6.a     tdbcpostgres1.1.1
 libanl.so      libdl.so      libmagic.so  libpanelw.so.6
 libthread_db.so     terminfo
 libbfd-2.35.so       libexpect5.45.4.so      libmagic.so.1
 libpanelw.so.6.2      libutil.a     texinfo
 libbfd.a      libfdisk.so      libmagic.so.1.0.0   libpthread.a
 libutil.so     thread2.8.5
 libbfd.so      libfl.a      libmcheck.a  libpthread.so         libuuid.so
 libblkid.so      libfl.la      libmenuw.so  libpython3.8.so
 'libuuid.so*'
'libblkid.so*'      libfl.so      libmenuw.so.6  libpython3.8.so.1.0
liby.a
```

On Mon, Oct 26, 2020 at 1:31 PM Ken Moffat <zarniwh...@ntlworld.com> wrote:

> On Mon, Oct 26, 2020 at 11:46:23AM -0600, Alexander Brassel wrote:
> > When running the check, I see errors reported about missing libgcc_s.so.1
> >
> > ```
> > make[5]: *** [Makefile:9399: gdb_index_test_1] Error 1
> > make[5]: Target 'gdb_index_test_1.stdout' not remade because of errors.
> > `echo g++ -W -Wall    -Wstack-usage=262144 -D_LARGEFILE_SOURCE
> > -D_FILE_OFFSET_BITS=64 -fmerge-constants -g -O2 -fno-use-linker-plugin
>  -o
> > gdb_index_test_2 | sed -e 's/\([^ ]*\)\(.*\)/\1 -Bgcctestdir\/\2/' -e
> > 's/-Wp,-D_FORTIFY_SOURCE=[0-9][0-9]*//'` -Wl,--gdb-index
> > gdb_index_test_cdebug.o
> > gcctestdir/collect-ld: error: cannot open
> > /usr/lib/gcc/x86_64-lfs-linux-gnu/10.2.0/../../../../lib/libgcc_s.so: No
> > such file or directory
> > gcctestdir/collect-ld: error: cannot open
> > /usr/lib/gcc/x86_64-lfs-linux-gnu/10.2.0/../../../../lib/libgcc_s.so: No
> > such file or directory
> > collect2: error: ld returned 1 exit status
> > make[5]: *** [Makefile:9405: gdb_index_test_2] Error 1
> > ```
> >
> > So I checked the directory layout and usr/lib/libgcc_s.so does exist.
> > However, it's a pointer to:
> >
> > `readlink libgcc_s.so`
> > produces: `/tools/lib/libgcc_s.so`
> >
> > Navigating to /tools/lib:
> > ```
> > (lfs chroot) root:/tools/lib# ls
> > gcc  libcc1.la libcc1.so  libcc1.so.0 libcc1.so.0.0.0
> > ```
> >
> > Why might this setup be occuring?
>
> The libgcc_s files should have been installed in $LFS/usr in gcc
> pass 2 at the end of chapter 6.  $LFS should be /mnt/lfs.  The only
> packages installed in /mnt/lfs/tools are binutils pass 1 and gcc
> pass 1.
>
> No idea why yours is different, but I wonder if you have passed
> 'tools' to a different package (before 10.0 we put a lot of things
> in tools, now we DESTDIR to $LFS/usr).
>
> ĸen
> --
> The people next door oppress me all night long. I tell them: I work
> all day, a man's got to have some time to learn to play the tuba.
> That's oppression, that is.    [ Guards! Guards! ]
> --
> 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

Reply via email to