Ignore:
Timestamp:
05/13/2017 04:07:52 PM (7 years ago)
Author:
DJ Lucas <dj@…>
Branches:
10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
Children:
7d7381f
Parents:
0f322d5
Message:

Add additional symlinks to avoid /tools references in final system.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@11247 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chapter06/createfiles.xml

    r0f322d5 rd1a862d7  
    3535  </indexterm>
    3636
    37   <para>Some programs use hard-wired paths to programs which do not exist yet. In
    38   order to satisfy these programs, create a number of symbolic links which will be
    39   replaced by real files throughout the course of this chapter after the software
    40   has been installed:</para>
    41 
    42 <screen><userinput>ln -sv /tools/bin/{bash,cat,echo,pwd,stty} /bin
    43 ln -sv /tools/bin/perl /usr/bin
     37  <para>Some programs use hard-wired paths to programs which do not exist yet.
     38  In order to satisfy these programs, create a number of symbolic links which
     39  will be replaced by real files throughout the course of this chapter after the
     40  software has been installed:</para>
     41
     42<screen revision="sysv"><userinput>ln -sv /tools/bin/{bash,cat,dd,echo,ln,pwd,rm,stty} /bin
     43ln -sv /tools/bin/{install,perl} /usr/bin
    4444ln -sv /tools/lib/libgcc_s.so{,.1} /usr/lib
    4545ln -sv /tools/lib/libstdc++.{a,so{,.6}} /usr/lib
     
    4747ln -sv bash /bin/sh</userinput></screen>
    4848
     49<screen revision="systemd"><userinput>ln -sv /tools/bin/{bash,cat,dd,echo,ln,pwd,rm,stty} /bin
     50ln -sv /tools/bin/{install,perl} /usr/bin
     51ln -sv /tools/lib/libgcc_s.so{,.1} /usr/lib
     52ln -sv /tools/lib/libstdc++.{a,so{,.6}} /usr/lib
     53sed 's/tools/usr/' /tools/lib/libstdc++.la > /usr/lib/libstdc++.la
     54for lib in blkid lzma mount uuid
     55do
     56    ln -sv /tools/lib/lib$lib.{a,so*} /usr/lib
     57    sed 's/tools/usr/' /tools/lib/lib${lib}.la > /usr/lib/lib${lib}.la
     58done
     59ln -sv bash /bin/sh</userinput></screen>
     60
    4961  <variablelist>
    5062    <title>The purpose of each link:</title>
     
    6678
    6779    <varlistentry>
     80      <term><parameter><filename>/bin/dd</filename></parameter></term>
     81      <listitem>
     82        <para>The path to <filename>dd</filename> will be hard-coded into the
     83        <filename>/usr/bin/libtool</filename> utility.</para>
     84      </listitem>
     85    </varlistentry>
     86
     87    <varlistentry>
    6888      <term><parameter><filename>/bin/echo</filename></parameter></term>
    6989      <listitem>
     
    7494
    7595    <varlistentry>
     96      <term><parameter><filename>/usr/bin/install</filename></parameter></term>
     97      <listitem>
     98        <para>The path to <filename>install</filename> will be hard-coded into
     99        the <filename>/usr/lib/bash/Makefile.inc</filename> file.</para>
     100      </listitem>
     101    </varlistentry>
     102
     103    <varlistentry>
     104      <term><parameter><filename>/bin/ln</filename></parameter></term>
     105      <listitem>
     106        <para>The path to <filename>ln</filename> will be hard-coded into the
     107        <filename>/usr/lib/perl5/&perl-version;/&lt;target-triplet&gt;/Config_heavy.pl</filename>
     108         file.</para>
     109      </listitem>
     110    </varlistentry>
     111
     112    <varlistentry>
    76113      <term><parameter><filename>/bin/pwd</filename></parameter></term>
    77114      <listitem>
    78115        <para>Some <command>configure</command> scripts, particularly Glibc's,
    79116        have this pathname hard-coded.</para>
     117      </listitem>
     118    </varlistentry>
     119
     120    <varlistentry>
     121      <term><parameter><filename>/bin/rm</filename></parameter></term>
     122      <listitem>
     123        <para>The path to <filename>rm</filename> will be hard-coded into the
     124        <filename>/usr/lib/perl5/&perl-version;/&lt;target-triplet&gt;/Config_heavy.pl</filename>
     125         file.</para>
    80126      </listitem>
    81127    </varlistentry>
     
    118164        reference that would otherwise be in
    119165        <filename>/usr/lib/libstdc++.la</filename> after GCC is installed.</para>
     166      </listitem>
     167    </varlistentry>
     168
     169    <varlistentry revision="systemd">
     170      <term><parameter><filename>/usr/lib/lib{blkid,lzma,mount,uuid}.{a,la,so*}</filename></parameter></term>
     171      <listitem>
     172        <para>These links prevent systemd utilties from being poluted with an
     173        unnecessary reference to the
     174        <filename class="directory">/tools</filename> directory.</para>
    120175      </listitem>
    121176    </varlistentry>
Note: See TracChangeset for help on using the changeset viewer.