source: chapter04/creatingminlayout.xml@ c093e6b

multilib
Last change on this file since c093e6b was c093e6b, checked in by Thomas Trepl (Moody) <thomas@…>, 19 months ago

Automatic merge of trunk into multilib

  • Property mode set to 100644
File size: 2.0 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-tools-creatingminlayout">
9 <?dbhtml filename="creatingminlayout.html"?>
10
11 <title>Creating a limited directory layout in LFS filesystem</title>
12
13 <para>In this section, we begin populating the LFS filesystem with the
14 pieces that will constitute the final Linux system. The first step is to
15 create a limited directory hierarchy, so that the programs compiled in <xref
16 linkend="chapter-temporary-tools"/> (as well as glibc and libstdc++ in <xref
17 linkend="chapter-cross-tools"/>) can be installed in their final
18 location. We do this so those temporary programs will be overwritten when
19 the final versions are built in <xref linkend="chapter-building-system"/>.</para>
20
21 <para>Create the required directory layout by issuing the following commands as
22 <systemitem class="username">root</systemitem>:</para>
23
24<screen><userinput>mkdir -pv $LFS/{etc,var} $LFS/usr/{bin,lib,sbin}
25
26for i in bin lib sbin; do
27 ln -sv usr/$i $LFS/$i
28done
29
30case $(uname -m) in
31 x86_64) mkdir -pv $LFS/lib64 ;;
32esac</userinput></screen>
33<screen arch="ml_32"><userinput>mkdir -pv $LFS/usr/lib32
34ln -sv usr/lib32 $LFS/lib32</userinput></screen>
35<screen arch="ml_x32"><userinput>mkdir -pv $LFS/usr/libx32
36ln -sv usr/libx32 $LFS/libx32</userinput></screen>
37<screen arch="ml_all"><userinput>mkdir -pv $LFS/usr/lib{,x}32
38ln -sv usr/lib32 $LFS/lib32
39ln -sv usr/libx32 $LFS/libx32</userinput></screen>
40
41 <para>Programs in <xref linkend="chapter-temporary-tools"/> will be compiled
42 with a cross-compiler (more details can be found in section <xref
43 linkend="ch-tools-toolchaintechnotes"/>). This cross-compiler will be installed
44 in a special directory, to separate it from the other programs. Still acting as
45 &root;, create that directory with this command:</para>
46
47<screen><userinput>mkdir -pv $LFS/tools</userinput></screen>
48
49</sect1>
Note: See TracBrowser for help on using the repository browser.