- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
BOOK/boot/common/createfiles.xml
rb925729 re8065f1 16 16 the next chapter after the software has been installed.</para> 17 17 18 <screen os="b"><userinput>ln -sv /tools/bin/{bash,cat,echo,grep,login,pwd,stty} ${CLFS}/bin 18 <screen><userinput>ln -sv /tools/bin/{bash,cat,echo,grep,login,passwd,pwd,sleep,stty} ${CLFS}/bin 19 ln -sv /tools/sbin/{agetty,blkid} ${CLFS}/sbin 19 20 ln -sv /tools/bin/file ${CLFS}/usr/bin 20 21 ln -sv /tools/lib/libgcc_s.so{,.1} ${CLFS}/usr/lib 21 ln -sv /tools/lib/libstdc++.so{.6,} ${CLFS}/usr/lib 22 sed -e 's/tools/usr/' /tools/lib/libstdc++.la > ${CLFS}/usr/lib/libstdc++.la 22 ln -sv /tools/lib/libstd*so* ${CLFS}/usr/lib 23 23 ln -sv bash ${CLFS}/bin/sh 24 ln -sv ../run ${CLFS}/var/run 25 ln -sv /tools/sbin/init ${CLFS}/sbin 26 ln -sv /tools/etc/{login.{access,defs},limits} ${CLFS}/etc</userinput></screen> 27 28 <variablelist os="c"> 29 <title>The purpose of each link:</title> 30 31 <varlistentry os="c1"> 32 <term><parameter><filename>/bin/bash</filename></parameter></term> 33 <listitem> 34 <para>Many <command>bash</command> scripts specify 35 <filename>/bin/bash</filename>.</para> 36 </listitem> 37 </varlistentry> 38 39 <varlistentry os="c2"> 40 <term><parameter><filename>/bin/cat</filename></parameter></term> 41 <listitem> 42 <para>This pathname is hard-coded into Glibc's configure script.</para> 43 </listitem> 44 </varlistentry> 45 46 <varlistentry os="c3"> 47 <term><parameter><filename>/bin/echo</filename></parameter></term> 48 <listitem> 49 <para>This is to satisfy one of the tests in Glibc's testsuite, which 50 will fail in <command>echo</command> is not found in 51 <filename class="directory">/bin</filename>.</para> 52 </listitem> 53 </varlistentry> 54 55 <varlistentry os="c4"> 56 <term><parameter><filename>/bin/grep</filename></parameter></term> 57 <listitem> 58 <para>This to avoid a hard-coded 59 <filename class="directory">/tools</filename> reference in Libtool.</para> 60 </listitem> 61 </varlistentry> 62 63 <varlistentry os="c5"> 64 <term><parameter><filename>/bin/login</filename></parameter></term> 65 <listitem> 66 <para>The <command>agetty</command> program expects to find 67 <command>login</command> in <filename class="directory">/bin</filename>.</para> 68 </listitem> 69 </varlistentry> 70 71 <varlistentry os="c6"> 72 <term><parameter><filename>/bin/pwd</filename></parameter></term> 73 <listitem> 74 <para>Some <command>configure</command> scripts, particularly Glibc's, 75 have this pathname hard-coded.</para> 76 </listitem> 77 </varlistentry> 78 79 <varlistentry os="c7"> 80 <term><parameter><filename>/bin/stty</filename></parameter></term> 81 <listitem> 82 <para>This pathname is hard-coded into Expect, therefore it is needed 83 for Binutils and GCC testsuites to pass.</para> 84 </listitem> 85 </varlistentry> 86 87 <varlistentry os="c8"> 88 <term><parameter><filename>/usr/bin/file</filename></parameter></term> 89 <listitem> 90 <para>Binutils' <command>configure</command> scripts specify this 91 command location.</para> 92 </listitem> 93 </varlistentry> 94 95 <varlistentry os="c9"> 96 <term><parameter><filename>/usr/lib/libgcc_s.so{,.1}</filename></parameter></term> 97 <listitem> 98 <para>Glibc needs this for the pthreads library to work.</para> 99 </listitem> 100 </varlistentry> 101 102 <varlistentry os="c10"> 103 <term><parameter><filename>/usr/lib/libstdc++{,.6}</filename></parameter></term> 104 <listitem> 105 <para>This is needed by several tests in Glibc's testsuite, as well as 106 for C++ support in GMP.</para> 107 </listitem> 108 </varlistentry> 109 110 <varlistentry os="c11"> 111 <term><parameter><filename>/usr/lib/libstdc++.la</filename></parameter></term> 112 <listitem> 113 <para>This prevents a <filename class="directory">/tools</filename> 114 reference that would be in <filename>/usr/lib/libstdc++.la</filename>.</para> 115 </listitem> 116 </varlistentry> 117 118 <varlistentry os="c12"> 119 <term><parameter><filename>/bin/sh</filename></parameter></term> 120 <listitem> 121 <para>Many shell scripts hard-code <filename>/bin/sh</filename>.</para> 122 </listitem> 123 </varlistentry> 124 125 <varlistentry os="c13"> 126 <term><parameter><filename>/var/run</filename></parameter></term> 127 <listitem> 128 <para>This is to account for any applications that have not yet 129 migrated to using <filename class="directory">/run</filename>.</para> 130 </listitem> 131 </varlistentry> 132 133 <varlistentry os="c14"> 134 <term><parameter><filename>/sbin/init</filename></parameter></term> 135 <listitem> 136 <para>This is where the kernel expects to find <command>init</command>.</para> 137 </listitem> 138 </varlistentry> 139 140 <varlistentry os="c15"> 141 <term><parameter><filename>/etc/{login.{access,defs},limits}</filename></parameter></term> 142 <listitem> 143 <para>These are configuration files used by Shadow and are expected to 144 be found in <filename class="directory">/etc</filename>, for programs 145 such as <command>login</command> and <command>su</command> to work.</para> 146 </listitem> 147 </varlistentry> 148 149 </variablelist> 150 151 <para os="d">Historically, Linux maintains a list of the mounted file systems 152 in the file <filename>/etc/mtab</filename>. Modern kernels maintain this list 153 internally and expose it to the user via the 154 <filename class="directory">/proc</filename> filesystem. To satisfy utilities 155 that expect the presence of <filename>/etc/mtab</filename>, create the 156 following symbolic link:</para> 157 158 <screen os="e"><userinput>ln -sv /proc/self/mounts ${CLFS}/etc/mtab</userinput></screen> 24 ln -sv /run ${CLFS}/var/run</userinput></screen> 159 25 160 26 </sect1>
Note:
See TracChangeset
for help on using the changeset viewer.