Author: bdubbs
Date: Sun Mar 2 13:32:26 2014
New Revision: 10497
Log:
LFS-7.5
Added:
tags/7.5/
- copied from r10493, trunk/BOOK/
Replaced:
tags/7.5/chapter01/changelog.xml
- copied, changed from r10494, trunk/BOOK/chapter01/changelog.xml
tags/7.5/chapter05/gettext.xml
- copied unchanged from r10494, trunk/BOOK/chapter05/gettext.xml
tags/7.5/general.ent
- copied, changed from r10494, trunk/BOOK/general.ent
tags/7.5/prologue/hostreqs.xml
- copied unchanged from r10496, trunk/BOOK/prologue/hostreqs.xml
tags/7.5/prologue/standards.xml
- copied unchanged from r10494, trunk/BOOK/prologue/standards.xml
Modified:
tags/7.5/packages.ent
Copied and modified: tags/7.5/chapter01/changelog.xml (from r10494,
trunk/BOOK/chapter01/changelog.xml)
==============================================================================
--- trunk/BOOK/chapter01/changelog.xml Sun Mar 2 10:29:21 2014
(r10494, copy source)
+++ tags/7.5/chapter01/changelog.xml Sun Mar 2 13:32:26 2014 (r10497)
@@ -39,6 +39,9 @@
<para>2014-03-02</para>
<itemizedlist>
<listitem>
+ <para>[bdubbs] - LFS-7.5 released.</para>
+ </listitem>
+ <listitem>
<para>[bdubbs] - Update host system requirements to address
possible host installation of inconsistent libraries.</para>
</listitem>
Copied: tags/7.5/chapter05/gettext.xml (from r10494,
trunk/BOOK/chapter05/gettext.xml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ tags/7.5/chapter05/gettext.xml Sun Mar 2 13:32:26 2014
(r10497, copy of r10494, trunk/BOOK/chapter05/gettext.xml)
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+ <!ENTITY % general-entities SYSTEM "../general.ent">
+ %general-entities;
+]>
+
+<sect1 id="ch-tools-gettext" role="wrap">
+ <?dbhtml filename="gettext.html"?>
+
+ <sect1info condition="script">
+ <productname>gettext</productname>
+ <productnumber>&gettext-version;</productnumber>
+ <address>&gettext-url;</address>
+ </sect1info>
+
+ <title>Gettext-&gettext-version;</title>
+
+ <indexterm zone="ch-tools-gettext">
+ <primary sortas="a-Gettext">Gettext</primary>
+ <secondary>tools</secondary>
+ </indexterm>
+
+ <sect2 role="package">
+ <title/>
+
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
+ href="../chapter06/gettext.xml"
+ xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
+
+ <segmentedlist>
+ <segtitle>&buildtime;</segtitle>
+ <segtitle>&diskspace;</segtitle>
+
+ <seglistitem>
+ <seg>&gettext-ch5-sbu;</seg>
+ <seg>&gettext-ch5-du;</seg>
+ </seglistitem>
+ </segmentedlist>
+
+ </sect2>
+
+ <sect2 role="installation">
+ <title>Installation of Gettext</title>
+
+ <para>For our temporary set of tools, we only need to build and install
+ three programs from Gettext.</para>
+
+ <para>Prepare Gettext for compilation:</para>
+
+<screen><userinput remap="configure">cd gettext-tools
+EMACS="no" ./configure --prefix=/tools --disable-shared</userinput></screen>
+
+ <variablelist>
+ <title>The meaning of the configure option:</title>
+
+ <varlistentry>
+ <term><parameter>EMACS="no"</parameter></term>
+ <listitem>
+ <para>This prevents the configure script from determining where to
+ install Emacs Lisp files as the test is known to hang on some hosts.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><parameter>--disable-shared</parameter></term>
+ <listitem>
+ <para>We do not need to install any of the shared Gettext libraries
at
+ this time, therefore there is no need to build them.</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ <para>Compile the package:</para>
+
+<screen><userinput remap="make">make -C gnulib-lib
+make -C src msgfmt
+make -C src msgmerge
+make -C src xgettext</userinput></screen>
+
+ <para>As only three programs have been compiled, it is not possible to run
the
+ test suite without compiling additional support libraries from the Gettext
+ package. It is therefore not recommended to attempt to run the test suite
at
+ this stage.</para>
+
+ <para>Install the <command>msgfmt</command>, <command>msgmerge</command>
and
+ <command>xgettext</command> programs:</para>
+
+<screen><userinput remap="install">cp -v src/{msgfmt,msgmerge,xgettext}
/tools/bin</userinput></screen>
+
+ </sect2>
+
+ <sect2 role="content">
+ <title/>
+
+ <para>Details on this package are located in
+ <xref linkend="contents-gettext" role="."/></para>
+
+ </sect2>
+
+</sect1>
Copied and modified: tags/7.5/general.ent (from r10494, trunk/BOOK/general.ent)
==============================================================================
--- trunk/BOOK/general.ent Sun Mar 2 10:29:21 2014 (r10494, copy
source)
+++ tags/7.5/general.ent Sun Mar 2 13:32:26 2014 (r10497)
@@ -1,8 +1,8 @@
-<!ENTITY version "SVN-20140302">
+<!ENTITY version "7.5">
<!ENTITY releasedate "March 2, 2014">
<!ENTITY copyrightdate "1999-2014"><!-- jhalfs needs a literal dash, not
– -->
<!ENTITY milestone "7.5">
-<!ENTITY generic-version "development"> <!-- Use "development", "testing", or
"x.y[-pre{x}]" -->
+<!ENTITY generic-version "7.5"> <!-- Use "development", "testing", or
"x.y[-pre{x}]" -->
<!ENTITY lfs-root "http://www.linuxfromscratch.org/">
<!ENTITY blfs-root "&lfs-root;blfs/">
Modified: tags/7.5/packages.ent
==============================================================================
--- trunk/BOOK/packages.ent Wed Feb 26 06:52:22 2014 (r10493)
+++ tags/7.5/packages.ent Sun Mar 2 13:32:26 2014 (r10497)
@@ -311,11 +311,11 @@
<!ENTITY less-ch6-sbu "less than 0.1 SBU">
<!ENTITY lfs-bootscripts-version "20130821"> <!-- Scripts
depend on this format -->
-<!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE KB"> <!-- Updated in
Makefile -->
+<!ENTITY lfs-bootscripts-size "34 KB">
<!ENTITY lfs-bootscripts-url
"&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.bz2">
-<!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM"> <!-- Updated in
Makefile -->
+<!ENTITY lfs-bootscripts-md5 "e908023fc44e613ad0c81241781289e7">
<!ENTITY lfs-bootscripts-home " ">
-<!ENTITY lfs-bootscripts-ch7-du "BOOTSCRIPTS-INSTALL-KB KB"> <!-- Updated in
Makefile -->
+<!ENTITY lfs-bootscripts-ch7-du "260 KB">
<!ENTITY lfs-bootscripts-ch7-sbu "less than 0.1 SBU">
<!ENTITY libpipeline-version "1.2.6">
Copied: tags/7.5/prologue/hostreqs.xml (from r10496,
trunk/BOOK/prologue/hostreqs.xml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ tags/7.5/prologue/hostreqs.xml Sun Mar 2 13:32:26 2014
(r10497, copy of r10496, trunk/BOOK/prologue/hostreqs.xml)
@@ -0,0 +1,209 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+ <!ENTITY % general-entities SYSTEM "../general.ent">
+ %general-entities;
+]>
+
+<sect1 id="pre-hostreqs" xreflabel="Host System Requirements">
+ <?dbhtml filename="hostreqs.html"?>
+
+ <title>Host System Requirements</title>
+
+ <para>Your host system should have the following software with the
+ minimum versions indicated. This should not be an issue for most
+ modern Linux distributions. Also note that many distributions will
+ place software headers into separate packages, often in the form of
+ <quote><package-name>-devel</quote> or
+ <quote><package-name>-dev</quote>. Be sure to install those if
+ your distribution provides them.</para>
+
+ <para>Earlier versions of the listed software packages may work, but has not
+ been tested.</para>
+
+ <itemizedlist spacing="compact">
+
+ <listitem>
+ <para><emphasis role="strong">Bash-3.2</emphasis> (/bin/sh
+ should be a symbolic or hard link to bash)</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Binutils-2.17</emphasis> (Versions
+ greater than &binutils-version; are not recommended as they have
+ not been tested)</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Bison-2.3</emphasis> (/usr/bin/yacc
+ should be a link to bison or small script that executes bison)</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Bzip2-1.0.4</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Coreutils-6.9</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Diffutils-2.8.1</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Findutils-4.2.31</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Gawk-4.0.1</emphasis> (/usr/bin/awk
+ should be a link to gawk)</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">GCC-4.1.2</emphasis> including the C++
+ compiler, <command>g++</command> (Versions greater than &gcc-version; are
+ not recommended as they have not been tested)</para>
+
+ <note><para>On some distributions, there have been reports that some
+ libraries used by gcc can be in an inconsistent state and that this
+ interferes with building some LFS packages. To check this, look in
+ /usr/lib and possibly /usr/lib64 for libgmp.la, libmpfr.la, and
+ libmpc.la. Either all three should be present or absent, but not only
+ one or two. If the problem exists on your system, either rename or
+ delete the .la files or install the appropriate missing
+ package.</para></note>
+
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Glibc-2.5.1</emphasis> (Versions
+ greater than &glibc-version; are not recommended as they have
+ not been tested)</para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Grep-2.5.1a</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Gzip-1.3.12</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Linux Kernel-&min-kernel;</emphasis></para>
+
+ <para>The reason for the kernel version requirement is that we specify
+ that version when building <application>glibc</application> in Chapter 6
+ at the recommendation of the developers. It is also required by
+ udev.</para>
+
+ <para>If the host kernel is earlier than &min-kernel; you will need to
replace
+ the kernel with a more up to date version. There are two ways
+ you can go about this. First, see if your Linux vendor provides a
&min-kernel;
+ or later kernel package. If so, you may wish to install it. If your
+ vendor doesn't offer an acceptable kernel package, or you would prefer
not to
+ install it, you can compile a kernel yourself. Instructions for
+ compiling the kernel and configuring the boot loader (assuming the host
+ uses GRUB) are located in <xref linkend="chapter-bootable"/>.</para>
+
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">M4-1.4.10</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Make-3.81</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Patch-2.5.4</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Perl-5.8.8</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Sed-4.1.5</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Tar-1.18</emphasis></para>
+ </listitem>
+
+ <listitem>
+ <para><emphasis role="strong">Xz-5.0.0</emphasis></para>
+ </listitem>
+
+ </itemizedlist>
+
+ <para>Note that the symlinks mentioned above are required to build an LFS
+ system using the instructions contained within this book. Symlinks that
+ point to other software (such as dash, mawk, etc.) may work, but are not
+ tested or supported by the LFS development team, and may require either
+ deviation from the instructions or additional patches to some
+ packages.</para>
+
+ <!-- Use an empty sect2 element to prevent a pdf warning. -->
+ <sect2 id="version-check">
+ <title> </title>
+
+ <para >To see whether your host system has all the appropriate versions, and
+ the ability to compile programs, run the following:</para>
+
+<!-- ANY additional lines in the script cause a pdf rendering problem-->
+<screen role="nodump"><userinput>cat > version-check.sh << "EOF"
+<literal>#!/bin/bash
+# Simple script to list version numbers of critical development tools
+
+export LC_ALL=C
+bash --version | head -n1 | cut -d" " -f2-4
+echo "/bin/sh -> `readlink -f /bin/sh`"
+echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-
+bison --version | head -n1
+if [ -e /usr/bin/yacc ];
+ then echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`";
+ else echo "yacc not found"; fi
+
+bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f1,6-
+echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
+diff --version | head -n1
+find --version | head -n1
+gawk --version | head -n1
+if [ -e /usr/bin/awk ];
+ then echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";
+ else echo "awk not found"; fi
+
+gcc --version | head -n1
+g++ --version | head -n1
+ldd --version | head -n1 | cut -d" " -f2- # glibc version
+grep --version | head -n1
+gzip --version | head -n1
+cat /proc/version
+m4 --version | head -n1
+make --version | head -n1
+patch --version | head -n1
+echo Perl `perl -V:version`
+sed --version | head -n1
+tar --version | head -n1
+xz --version | head -n1
+
+echo 'main(){}' > dummy.c && g++ -o dummy dummy.c
+if [ -x dummy ]
+ then echo "g++ compilation OK";
+ else echo "g++ compilation failed"; fi
+rm -f dummy.c dummy
+
+for lib in lib{gmp,mpfr,mpc}.la; do
+ echo $lib: $(if find /usr/lib* -name $lib|
+ grep -q $lib;then :;else echo not;fi) found
+done
+unset lib</literal>
+EOF
+
+bash version-check.sh</userinput></screen>
+
+</sect2>
+</sect1>
Copied: tags/7.5/prologue/standards.xml (from r10494,
trunk/BOOK/prologue/standards.xml)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ tags/7.5/prologue/standards.xml Sun Mar 2 13:32:26 2014
(r10497, copy of r10494, trunk/BOOK/prologue/standards.xml)
@@ -0,0 +1,210 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+ <!ENTITY % general-entities SYSTEM "../general.ent">
+ %general-entities;
+]>
+
+<sect1 id="pre-standards">
+ <?dbhtml filename="standards.html"?>
+
+ <title>LFS and Standards</title>
+
+ <!--<sect2>
+ <title/> -->
+
+ <para>The structure of LFS follows Linux standards as closely as
+ possible. The primary standards are:</para>
+
+ <itemizedlist>
+ <listitem>
+ <para><ulink url="http://pubs.opengroup.org/onlinepubs/9699919799/">
+ POSIX.1-2008</ulink>.</para>
+ </listitem>
+ <listitem>
+ <para><ulink
+
url="http://www.linuxfoundation.org/collaborate/workgroups/lsb/fhs-30-draft-1">
+ Filesystem Hierarchy Standard version 3.0 Draft 1 (FHS)</ulink></para>
+
+ </listitem>
+ <listitem>
+ <para><ulink url="http://refspecs.linuxfoundation.org/lsb.shtml">Linux
+ Standard Base (LSB) Specifications</ulink></para>
+
+ <para>The LSB has five separate standards: Core, C++, Desktop,
+ Runtime Languages, and Printing. In addition to generic requirements
+ there are also architecture specific requirements. LFS attempts to
+ conform to the architectures discussed in the previous section.</para>
+
+ <note><para>Many people do not agree with the requirements of the LSB.
+ The main purpose of defining it is to ensure that proprietary software
+ will be able to be installed and run properly on a compliant system.
+ Since LFS is source based, the user has complete control over what
+ packages are desired and many choose not to install some packages that
+ are specified by the LSB.</para></note>
+
+ </listitem>
+ </itemizedlist>
+
+ <para>Creating a complete LFS system capable of passing the LSB
+ certifications tests is possible, but not without many additional packages
+ that are beyond the scope of LFS. These additional packages have
+ installation instructions in BLFS. </para>
+
+ <variablelist>
+ <bridgehead renderas="sect3">Packages supplied by LFS needed to
+ satisfy the LSB Requirements</bridgehead>
+ <?dbfo list-presentation="list"?>
+ <?dbhtml list-presentation="table"?>
+
+ <varlistentry>
+ <term><emphasis>LSB Core:</emphasis></term>
+ <listitem>
+ <para>Bash, Bc, Binutils, Coreutils, Diffutils, File, Findutils,
Gawk,
+ Grep, Gzip, M4, Man-DB, Ncurses, Procps, Psmisc, Sed,
+ Shadow, Tar, Util-linux, Zlib</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB C++:</emphasis></term>
+ <listitem>
+ <para>Gcc</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Desktop:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Runtime Languages:</emphasis></term>
+ <listitem>
+ <para>Perl</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Printing:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Multimeda:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ <variablelist>
+ <bridgehead renderas="sect3">Packages supplied by BLFS needed to
+ satisfy the LSB Requirements</bridgehead>
+ <?dbfo list-presentation="list"?>
+ <?dbhtml list-presentation="table"?>
+
+ <varlistentry>
+ <term><emphasis>LSB Core:</emphasis></term>
+ <listitem>
+ <para>At, Batch (a part of At), Cpio, Ed, Fcrontab, Initd-tools,
+ Lsb_release, PAM, Sendmail (or Postfix or Exim) </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB C++:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Desktop:</emphasis></term>
+ <listitem>
+ <para>ATK, Cairo, Desktop-file-utils, Freetype, Fontconfig,
+ Glib2, GTK+2, Icon-naming-utils, Libjpeg, Libpng, Libxml2,
+ MesaLib, Pango, Qt4, Xorg</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Runtime Languages:</emphasis></term>
+ <listitem>
+ <para>Python</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Printing:</emphasis></term>
+ <listitem>
+ <para>CUPS</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Multimeda:</emphasis></term>
+ <listitem>
+ <para>Alsa Libraries, NSPR, NSS, OpenSSL, Java, Xdg-utils</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ <variablelist>
+ <bridgehead renderas="sect3">Packages not supplied by LFS or BLFS
+ needed to satisfy the LSB Requirements</bridgehead>
+ <?dbfo list-presentation="list"?>
+ <?dbhtml list-presentation="table"?>
+
+ <varlistentry>
+ <term><emphasis>LSB Core:</emphasis></term>
+ <listitem>
+ <para>time (executable) and pax</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB C++:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Desktop:</emphasis></term>
+ <listitem>
+ <para>Qt3</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Runtime Languages:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Printing:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><emphasis>LSB Multimeda:</emphasis></term>
+ <listitem>
+ <para>None</para>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+</sect1>
+
--
http://linuxfromscratch.org/mailman/listinfo/lfs-book
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page