diff options
Diffstat (limited to 'chapter04/settingenviron.xml')
-rw-r--r-- | chapter04/settingenviron.xml | 46 |
1 files changed, 35 insertions, 11 deletions
diff --git a/chapter04/settingenviron.xml b/chapter04/settingenviron.xml index 512d30d10..9c8bae7a9 100644 --- a/chapter04/settingenviron.xml +++ b/chapter04/settingenviron.xml @@ -43,12 +43,14 @@ umask 022 LFS=/mnt/lfs LC_ALL=POSIX LFS_TGT=$(uname -m)-lfs-linux-gnu -PATH=/tools/bin:/bin:/usr/bin +PATH=/usr/bin +if [ ! -L /bin ]; then PATH=/bin:$PATH; fi +PATH=$LFS/tools/bin:$PATH export LFS LC_ALL LFS_TGT PATH</literal> EOF</userinput></screen> <variablelist> - <title>The meaning of the command line options in <filename>.bashrc</filename></title> + <title>The meaning of the settings in <filename>.bashrc</filename></title> <varlistentry> <term><parameter>set +h</parameter></term> @@ -61,7 +63,7 @@ EOF</userinput></screen> be used as soon as they are installed. By switching off the hash function, the shell will always search the <envar>PATH</envar> when a program is to be run. As such, the shell will find the newly compiled tools in - <filename class="directory">$LFS/tools</filename> as soon as they are + <filename class="directory">~/tools</filename> as soon as they are available without remembering a previous version of the same program in a different location.</para> </listitem> @@ -108,14 +110,36 @@ EOF</userinput></screen> </varlistentry> <varlistentry> - <term><parameter>PATH=/tools/bin:/bin:/usr/bin</parameter></term> + <term><parameter>PATH=/usr/bin</parameter></term> <listitem> - <para>By putting <filename class="directory">/tools/bin</filename> ahead of the - standard <envar>PATH</envar>, all the programs installed in <xref - linkend="chapter-temporary-tools"/> are picked up by the shell immediately after - their installation. This, combined with turning off hashing, limits the risk - that old programs are used from the host when the same programs are available in - the Chapter 5 environment.</para> + <para>Many modern linux distributions have merged <filename + class="directory">/bin</filename> and <filename + class="directory">/usr/bin</filename>. When this is the case, the standard + <envar>PATH</envar> variable needs just to be set to <filename + class="directory">/usr/bin/</filename> for the <xref + linkend="chapter-temporary-tools"/> environment. When this is not the + case, the following line adds <filename class="directory">/bin</filename> + to the path.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><parameter>if [ ! -L /bin ]; then PATH=/bin:$PATH; fi</parameter></term> + <listitem> + <para>If <filename class="directory">/bin</filename> is not a symbolic + link, then it has to be added to the <envar>PATH</envar> variable.</para> + </listitem> + </varlistentry> + + <varlistentry> + <term><parameter>PATH=$LFS/tools/bin:$PATH</parameter></term> + <listitem> + <para>By putting <filename class="directory">$LFS/tools/bin</filename> ahead of the + standard <envar>PATH</envar>, the cross-compiler installed at the beginning + of <xref linkend="chapter-cross-tools"/> is picked up by the shell + immediately after its installation. This, combined with turning off hashing, + limits the risk that the compiler from the host be used instead of the + cross-compiler.</para> </listitem> </varlistentry> @@ -123,7 +147,7 @@ EOF</userinput></screen> <term><parameter>export LFS LC_ALL LFS_TGT PATH</parameter></term> <listitem> <para>While the above commands have set some variables, in order - to make them visible within any sub-shells, we export them</para> + to make them visible within any sub-shells, we export them.</para> </listitem> </varlistentry> |