mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-03-05 22:04:48 +00:00
Initial support of UTF-8. Thanks Alexander Patrakov.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@7245 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
60e34b5281
commit
fa21b3dc89
@ -32,6 +32,7 @@ First a summary, then a detailed log.</para>
|
||||
<listitem><para>Bison &bison-version;</para></listitem>
|
||||
<!-- <listitem><para>Bzip2 &bzip2-version;</para></listitem> -->
|
||||
<listitem><para>Coreutils &coreutils-version;</para></listitem>
|
||||
<!-- <listitem><para>DB &db-version;</para></listitem> -->
|
||||
<!-- <listitem><para>DejaGNU &dejagnu-version;</para></listitem> -->
|
||||
<!-- <listitem><para>Diffutils &diffutils-version;</para></listitem> -->
|
||||
<listitem><para>E2fsprogs &e2fsprogs-version;</para></listitem>
|
||||
@ -44,7 +45,7 @@ First a summary, then a detailed log.</para>
|
||||
<listitem><para>Gettext &gettext-version;</para></listitem>
|
||||
<listitem><para>Glibc &glibc-version;</para></listitem>
|
||||
<!-- <listitem><para>Grep &grep-version;</para></listitem> -->
|
||||
<listitem><para>Groff &groff-version;</para></listitem>
|
||||
<!-- <listitem><para>Groff &groff-version;</para></listitem> -->
|
||||
<listitem><para>GRUB &grub-version;</para></listitem>
|
||||
<!-- <listitem><para>Gzip &gzip-version;</para></listitem> -->
|
||||
<!-- <listitem><para>Hotplug &hotplug-version;</para></listitem> -->
|
||||
@ -59,7 +60,7 @@ First a summary, then a detailed log.</para>
|
||||
<listitem><para>Linux-Libc-Headers &linux-libc-headers-version;</para></listitem>
|
||||
<listitem><para>M4 &m4-version;</para></listitem>
|
||||
<!-- <listitem><para>Make &make-version;</para></listitem> -->
|
||||
<listitem><para>Man &man-version;</para></listitem>
|
||||
<!-- <listitem><para>Man-DB &man-db-version;</para></listitem> -->
|
||||
<listitem><para>Man-pages &man-pages-version;</para></listitem>
|
||||
<!-- <listitem><para>Mktemp &mktemp-version;</para></listitem> -->
|
||||
<!-- <listitem><para>Module-Init-Tools &module-init-tools-version;</para></listitem> -->
|
||||
@ -83,14 +84,22 @@ First a summary, then a detailed log.</para>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>Downgraded to:</para>
|
||||
<itemizedlist>
|
||||
<listitem><para>Groff &groff-version;-&groff-patchlevel;</para></listitem>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>Added:</para>
|
||||
<itemizedlist>
|
||||
<listitem><para>&bzip2-bzgrep-patch;</para></listitem>
|
||||
<listitem><para>&bzip2-docs-patch;</para></listitem>
|
||||
<listitem><para>&gawk-segfault-patch;</para></listitem>
|
||||
<listitem><para>&gcc-specs-patch;</para></listitem>
|
||||
<listitem><para>DB-&db-version;</para></listitem>
|
||||
<listitem><para>&inetutils-gcc4_fixes-patch;</para></listitem>
|
||||
<listitem><para>&kbd-gcc4_fixes-patch;</para></listitem>
|
||||
<listitem><para>MAN-DB-&man-db-version;</para></listitem>
|
||||
<listitem><para>&mktemp-tempfile-patch;</para></listitem>
|
||||
<listitem><para>&perl-libc-patch;</para></listitem>
|
||||
<listitem><para>&shadow-configure-patch;</para></listitem>
|
||||
@ -107,6 +116,7 @@ First a summary, then a detailed log.</para>
|
||||
<listitem><para>glibc-2.3.4-fix_test-1.patch</para></listitem>
|
||||
<listitem><para>inetutils-1.4.2-kernel_headers-1.patch</para></listitem>
|
||||
<listitem><para>iproute2-2.6.11-050330-remove_db-1.patch</para></listitem>
|
||||
<listitem><para>Man-1.6b</para></listitem>
|
||||
<listitem><para>mktemp-1.5-add_tempfile-2.patch</para></listitem>
|
||||
<listitem><para>perl-5.8.6-libc-1.patch</para></listitem>
|
||||
<listitem><para>vim-6.3-security_fix-1.patch</para></listitem>
|
||||
@ -114,6 +124,10 @@ First a summary, then a detailed log.</para>
|
||||
</itemizedlist>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>January 5, 2006 [jhuntwork]: Initial addition of UTF-8
|
||||
support. Thanks to Alexander Patrakov.</para>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>January 3, 2006 [matt]: Clarify the description of mktemp's
|
||||
--with-libc configure parameter (fixes bug 1667).</para></listitem>
|
||||
|
||||
|
@ -67,6 +67,13 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>DB (&db-version;) - 7,925 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="http://dev.sleepycat.com/"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>DejaGNU (&dejagnu-version;) - 852 KB:</term>
|
||||
<listitem>
|
||||
@ -158,12 +165,25 @@ url="http://www.linuxfromscratch.org/lfs/download.html#ftp"/>.</para></note>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Groff (&groff-version;) - 2,096 KB:</term>
|
||||
<term>Groff (&groff-version;) - 2,260 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&gnu;groff/"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Groff Debian Patch - 129 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="http://ftp.debian.org/debian/pool/main/g/groff/&groff-debian-patch;"/></para>
|
||||
<note><para>Groff Debian Patch (&groff-version;-&groff-patchlevel;)
|
||||
may no longer be available at the
|
||||
listed location. The site administrators of the master download
|
||||
location occasionally remove older versions when new ones are
|
||||
released. There is no alternative download location yet.</para></note>
|
||||
<!-- Actually there's snapshot.debian.net, but they have hardware problems -->
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>GRUB (&grub-version;) - 772 KB:</term>
|
||||
<listitem>
|
||||
@ -224,7 +244,7 @@ url="http://www.linuxfromscratch.org/lfs/download.html#ftp"/>.</para></note>
|
||||
<varlistentry>
|
||||
<term>LFS-Bootscripts (&lfs-bootscripts-version;) - 32 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="http://downloads.linuxfromscratch.org/"/></para>
|
||||
<para><ulink url="http://www.linuxfromscratch.org/~dj/bootscripts/"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -264,9 +284,9 @@ url="http://www.linuxfromscratch.org/lfs/download.html#ftp"/>.</para></note>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Man (&man-version;) - 205 KB:</term>
|
||||
<term>Man-DB (&man-db-version;) - 816 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="http://primates.ximian.com/~flucifredi/man/"/></para>
|
||||
<para><ulink url="http://savannah.nongnu.org/download/man-db/"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -298,6 +318,19 @@ url="http://www.linuxfromscratch.org/lfs/download.html#ftp"/>.</para></note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term>Ncurses Rollup Patch (&ncurses-date;) - 328 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="ftp://invisible-island.net/ncurses/&ncurses-version;/"/></para>
|
||||
<note><para>Ncurses Rollup Patch (&ncurses-date;) may no longer be available at the
|
||||
listed location. The site administrators of the master download
|
||||
location occasionally remove older versions when new ones are
|
||||
released. There is no alternative download location yet.</para></note>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
|
||||
<varlistentry>
|
||||
<term>Patch (&patch-version;) - 156 KB:</term>
|
||||
<listitem>
|
||||
|
@ -29,6 +29,13 @@ needed to build an LFS system:</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Coreutils Internationalization Fixes Patch - 110 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&alexpatches;&coreutils-i18n-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Coreutils Suppress Uptime, Kill, Su Patch - 15 KB:</term>
|
||||
<listitem>
|
||||
@ -43,6 +50,13 @@ needed to build an LFS system:</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Diffutils Internationalization Fixes Patch - 18 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&alexpatches;&diffutils-i18n-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Expect Spawn Patch - 7 KB:</term>
|
||||
<listitem>
|
||||
@ -71,12 +85,26 @@ needed to build an LFS system:</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Grep RedHat Fixes Patch - 56 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&alexpatches;&grep-fixes-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Gzip Security Patch - 2 KB:</term><listitem>
|
||||
<para><ulink url="&patches-root;&gzip-security_fix-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Kbd Backspace/Delete Fix Patch - 1 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&alexpatches;&kbd-backspace-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Kbd GCC-4.x Fix Patch - 1 KB:</term>
|
||||
<listitem>
|
||||
@ -98,6 +126,13 @@ needed to build an LFS system:</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Linux kernel UTF-8 Composing Patch - 3 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&alexpatches;&linux-utf8-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Mktemp Tempfile Patch - 4 KB:</term>
|
||||
<listitem>
|
||||
@ -105,6 +140,13 @@ needed to build an LFS system:</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Ncurses Fixes Patch - 9 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&alexpatches;&ncurses-fixes-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Perl Libc Patch - 1 KB:</term>
|
||||
<listitem>
|
||||
@ -112,6 +154,13 @@ needed to build an LFS system:</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Sysklogd 8-Bit Cleanness Patch - 1 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&lfs-root;patches/downloads/sysklogd/&sysklogd-8bit-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Shadow Configure Script Patch - 1KB:</term>
|
||||
<listitem>
|
||||
@ -140,6 +189,14 @@ needed to build an LFS system:</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Texinfo Multibyte Fixes Patch - 1 KB:</term>
|
||||
<listitem>
|
||||
<para><ulink url="&alexpatches;&texinfo-multibyte-patch;"/></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Texinfo Tempfile Fix Patch - 2 KB:</term>
|
||||
<listitem>
|
||||
|
@ -31,11 +31,14 @@
|
||||
|
||||
<screen><userinput>./configure --prefix=/tools</userinput></screen>
|
||||
|
||||
<para>The configure script doesn't detect some functionality correctly. The
|
||||
following commands correct this problem:</para>
|
||||
|
||||
<screen><userinput>echo "#define HAVE_LANGINFO_CODESET 1" >> config.h
|
||||
echo "#define HAVE_LC_MESSAGES 1" >> config.h</userinput></screen>
|
||||
<para>Due to a bug in the <command>configure</command> script, Gawk fails
|
||||
to detect certain aspects of locale support in Glibc. This
|
||||
bug leads to, e.g., Gettext testsuite failures. Work around this issue
|
||||
by appending the missing macro definitions to <filename>config.h</filename>:</para>
|
||||
<screen><userinput>cat >>config.h <<"EOF"
|
||||
<literal>#define HAVE_LANGINFO_CODESET 1
|
||||
#define HAVE_LC_MESSAGES 1</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
|
@ -88,7 +88,7 @@ kernel has and can optimize itself accordingly.</para></listitem>
|
||||
<varlistentry>
|
||||
<term><parameter>--without-selinux</parameter></term>
|
||||
<listitem><para>When building from hosts that include SELinux functionality
|
||||
(e.g. Fedora Core 3), Glibc will build with support for SELinux. As the LFS
|
||||
(e.g., Fedora Core 3), Glibc will build with support for SELinux. As the LFS
|
||||
tools environment does not contain support for SELinux, a Glibc compiled with
|
||||
such support will fail to operate correctly.</para></listitem>
|
||||
</varlistentry>
|
||||
@ -158,38 +158,9 @@ programs works by locale.</para>
|
||||
<note><para>If the test suites are not being run in this chapter (as
|
||||
per the recommendation), there is no need to install the locales now.
|
||||
The appropriate locales will be installed in the next
|
||||
chapter.</para></note>
|
||||
|
||||
<para>To install the Glibc locales anyway, use the following
|
||||
command:</para>
|
||||
|
||||
<screen role="nodump"><userinput>make localedata/install-locales</userinput></screen>
|
||||
|
||||
<para>To save time, an alternative to running the
|
||||
previous command (which generates and installs every locale Glibc is
|
||||
aware of) is to install only those locales that are wanted and needed.
|
||||
This can be achieved by using the <command>localedef</command>
|
||||
command. Information on this command is located in the
|
||||
<filename>INSTALL</filename> file in the Glibc source. However, there
|
||||
are a number of locales that are essential in order for the tests of
|
||||
future packages to pass, in particular, the
|
||||
<emphasis>libstdc++</emphasis> tests from GCC. The following
|
||||
instructions, instead of the <parameter>install-locales</parameter>
|
||||
target used above, will install the minimum set of locales necessary
|
||||
for the tests to run successfully:</para>
|
||||
|
||||
<screen><userinput>mkdir -pv /tools/lib/locale
|
||||
localedef -i de_DE -f ISO-8859-1 de_DE
|
||||
localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro
|
||||
localedef -i en_HK -f ISO-8859-1 en_HK
|
||||
localedef -i en_PH -f ISO-8859-1 en_PH
|
||||
localedef -i en_US -f ISO-8859-1 en_US
|
||||
localedef -i es_MX -f ISO-8859-1 es_MX
|
||||
localedef -i fa_IR -f UTF-8 fa_IR
|
||||
localedef -i fr_FR -f ISO-8859-1 fr_FR
|
||||
localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro
|
||||
localedef -i it_IT -f ISO-8859-1 it_IT
|
||||
localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen>
|
||||
chapter. To install the Glibc locales anyway, use instructions from
|
||||
<xref linkend="ch-system-glibc" role="."/>
|
||||
</para></note>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
@ -34,6 +34,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="m4.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="bison.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="less.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="db.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="groff.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="sed.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="flex.xml"/>
|
||||
@ -55,7 +56,7 @@
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="grub.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="gzip.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="hotplug.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="man.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="man-db.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="make.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="module-init-tools.xml"/>
|
||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="patch.xml"/>
|
||||
|
@ -41,6 +41,26 @@ other packages later:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&coreutils-suppress-patch;</userinput></screen>
|
||||
|
||||
<para>POSIX requires that programs from Coreutils recognize character
|
||||
boundaries correctly even in multibyte locales. The following patch
|
||||
fixes this non-compliance and other internationalization-related bugs:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&coreutils-i18n-patch;</userinput></screen>
|
||||
|
||||
<para>In order for the tests added by this patch to pass, the permissions for
|
||||
the test file have to be changed:</para>
|
||||
|
||||
<screen><userinput>chmod +x tests/sort/sort-mb-tests</userinput></screen>
|
||||
|
||||
<note><para>In the past, many bugs were found in this patch. When reporting
|
||||
new bugs to Coreutils maintainers, please check first if they are reproducible
|
||||
without this patch.</para></note>
|
||||
|
||||
<para>It has been found that translated messages sometimes overflow a buffer
|
||||
in the <command>who -Hu</command> command. Increase the buffer size:</para>
|
||||
|
||||
<screen><userinput>sed -i 's/_LEN 6/_LEN 20/' src/who.c</userinput></screen>
|
||||
|
||||
<para>Now prepare Coreutils for compilation:</para>
|
||||
|
||||
<screen><userinput>./configure --prefix=/usr</userinput></screen>
|
||||
|
218
chapter06/db.xml
Normal file
218
chapter06/db.xml
Normal file
@ -0,0 +1,218 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
<sect1 id="ch-system-db" role="wrap">
|
||||
<title>DB-&db-version;</title>
|
||||
<?dbhtml filename="db.html"?>
|
||||
|
||||
<indexterm zone="ch-system-db"><primary sortas="a-DB">Berkeley DB</primary></indexterm>
|
||||
|
||||
<sect2 role="package"><title/>
|
||||
<para>The DB package contains programs and utilities used by many other
|
||||
applications for database related functions.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
<seglistitem><seg>1.0 SBU</seg><seg>74 MB</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem><seg>Bash, Binutils, Coreutils,
|
||||
Diffutils, GCC, Glibc, Make and Sed.</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of DB</title>
|
||||
|
||||
<para>Prepare DB for compilation:</para>
|
||||
|
||||
<screen><userinput>cd build_unix &&
|
||||
../dist/configure --prefix=/usr --enable-compat185 --enable-cxx</userinput></screen>
|
||||
|
||||
<para>The meaning of the configure options:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-compat185</parameter></term>
|
||||
<listitem><para>This option enables building DB 1.85 compatibility API.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-cxx</parameter></term>
|
||||
<listitem><para>This option enables building C++ API libraries.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput>make LIBSO_LIBS="-lpthread" LIBXSO_LIBS="-lpthread"</userinput></screen>
|
||||
|
||||
<para>The meaning of the make option:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>LIBSO_LIBS="-lpthread" LIBXSO_LIBS="-lpthread"</parameter></term>
|
||||
<listitem><para>These variables work around a bug in the <command>configure</command>
|
||||
script that causes the DB libraries not to link against NPTL libraries</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>It is not possible to test the package meaningfully, because that
|
||||
would involve building TCL bindings. TCL bindings cannot be built properly
|
||||
now because TCL is linked against Glibc in <filename class="directory">/tools</filename>,
|
||||
not against Glibc in <filename class="directory">/usr</filename>.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput>make docdir=/usr/share/doc/db-&db-version; install</userinput></screen>
|
||||
|
||||
<para>The meaning of the make option:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>docdir=...</parameter></term>
|
||||
<listitem><para>This variable specifies the correct place for the documentation.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Fix the permissions on the installed documentation files:</para>
|
||||
|
||||
<screen><userinput>chown root:root /usr/bin/db_* \
|
||||
/usr/lib/libdb* /usr/include/db* &&
|
||||
chown -R root:root /usr/share/doc/db-&db-version;</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="contents-db" role="content"><title>Contents of DB</title>
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<seglistitem><seg>db_archive, db_checkpoint, db_deadlock, db_dump,
|
||||
db_hotbackup, db_load, db_printlog, db_recover, db_stat, db_upgrade and
|
||||
db_verify
|
||||
</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed libraries</segtitle>
|
||||
<seglistitem><seg>libdb.[so,a] and libdb_cxx.[so,a]</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist><bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="db_archive">
|
||||
<term><command>db_archive</command></term>
|
||||
<listitem>
|
||||
<para>Prints the pathnames of log files that are no longer in use</para>
|
||||
<indexterm zone="ch-system-db db_archive"><primary sortas="b-db_archive">db_archive</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_checkpoint">
|
||||
<term><command>db_checkpoint</command></term>
|
||||
<listitem>
|
||||
<para>A daemon used to monitor and checkpoint database logs</para>
|
||||
<indexterm zone="ch-system-db db_checkpoint"><primary sortas="b-db_checkpoint">db_checkpoint</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_deadlock">
|
||||
<term><command>db_deadlock</command></term>
|
||||
<listitem>
|
||||
<para>A daemon used to abort lock requests when deadlocks are detected</para>
|
||||
<indexterm zone="ch-system-db db_deadlock"><primary sortas="b-db_deadlock">db_deadlock</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_dump">
|
||||
<term><command>db_dump</command></term>
|
||||
<listitem>
|
||||
<para>Converts database files to a plain-text file format readable by <command>db_load</command></para>
|
||||
<indexterm zone="ch-system-db db_dump"><primary sortas="b-db_dump">db_dump</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_hotbackup">
|
||||
<term><command>db_hotbackup</command></term>
|
||||
<listitem>
|
||||
<para>Creates <quote>hot backup</quote> or <quote>hot failover</quote> snapshots of Berkeley DB databases</para>
|
||||
<indexterm zone="ch-system-db db_hotbackup"><primary sortas="b-db_hotbackup">db_hotbackup</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_load">
|
||||
<term><command>db_load</command></term>
|
||||
<listitem>
|
||||
<para>Is used to create database files from plain-text files</para>
|
||||
<indexterm zone="ch-system-db db_load"><primary sortas="b-db_load">db_load</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_printlog">
|
||||
<term><command>db_printlog</command></term>
|
||||
<listitem>
|
||||
<para>Converts database log files to human readable text</para>
|
||||
<indexterm zone="ch-system-db db_printlog"><primary sortas="b-db_printlog">db_printlog</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_recover">
|
||||
<term><command>db_recover</command></term>
|
||||
<listitem>
|
||||
<para>Is used to restore a database to a consistent state after a failure</para>
|
||||
<indexterm zone="ch-system-db db_recover"><primary sortas="b-db_recover">db_recover</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_stat">
|
||||
<term><command>db_stat</command></term>
|
||||
<listitem>
|
||||
<para>Displays statistics for Berkeley databases</para>
|
||||
<indexterm zone="ch-system-db db_stat"><primary sortas="b-db_stat">db_stat</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_upgrade">
|
||||
<term><command>db_upgrade</command></term>
|
||||
<listitem>
|
||||
<para>Is used to upgrade database files to a newer version of Berkeley DB</para>
|
||||
<indexterm zone="ch-system-db db_upgrade"><primary sortas="b-db_upgrade">db_upgrade</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="db_verify">
|
||||
<term><command>db_verify</command></term>
|
||||
<listitem>
|
||||
<para>Is used to run consistency checks on database files</para>
|
||||
<indexterm zone="ch-system-db db_verify"><primary sortas="b-db_verify">db_verify</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="libdb">
|
||||
<term><filename class="libraryfile">libdb.[so,a]</filename></term>
|
||||
<listitem>
|
||||
<para>Contains functions to manipulate database files from C programs</para>
|
||||
<indexterm zone="ch-system-db libdb"><primary sortas="c-libdb">libdb</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libdb_cxx">
|
||||
<term><filename class="libraryfile">libdb_cxx.[so,a]</filename></term>
|
||||
<listitem>
|
||||
<para>Contains functions to manipulate database files from C++ programs</para>
|
||||
<indexterm zone="ch-system-db libdb_cxx"><primary sortas="c-libdb_cxx">libdb_cxx</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
@ -29,6 +29,12 @@ Gettext, Glibc, Grep, Make, and Sed</seg></seglistitem>
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Diffutils</title>
|
||||
|
||||
<para>POSIX requires the <command>diff</command> command to treat whitespace
|
||||
characters according to the current locale. The following patch fixes the
|
||||
non-compliance issue:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&diffutils-i18n-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare Diffutils for compilation:</para>
|
||||
|
||||
<screen><userinput>./configure --prefix=/usr</userinput></screen>
|
||||
|
@ -28,8 +28,8 @@ Diffutils, GCC, Gettext, Glibc, Grep, Make, and Sed</seg></seglistitem>
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Gawk</title>
|
||||
|
||||
<para>Patch Gawk to fix a bug which causes it to segfault when invoked on a
|
||||
non-existent file:</para>
|
||||
<para>Under some circumstances, Gawk-&gawk-version; attempts to free a chunk
|
||||
of memory that was not allocated. This bug is fixed by the following patch:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&gawk-segfault-patch;</userinput></screen>
|
||||
|
||||
@ -37,11 +37,15 @@ non-existent file:</para>
|
||||
|
||||
<screen><userinput>./configure --prefix=/usr --libexecdir=/usr/lib</userinput></screen>
|
||||
|
||||
<para>The configure script doesn't detect some functionality correctly. The
|
||||
following commands correct this problem:</para>
|
||||
<para>Due to a bug in the <command>configure</command> script, Gawk fails
|
||||
to detect certain aspects of locale support in Glibc. This
|
||||
bug leads to, e.g., Gettext testsuite failures. Work around this issue
|
||||
by appending the missing macro definitions to <filename>config.h</filename>:</para>
|
||||
|
||||
<screen><userinput>echo "#define HAVE_LANGINFO_CODESET 1" >> config.h
|
||||
echo "#define HAVE_LC_MESSAGES 1" >> config.h</userinput></screen>
|
||||
<screen><userinput>cat >>config.h <<"EOF"
|
||||
<literal>#define HAVE_LANGINFO_CODESET 1
|
||||
#define HAVE_LC_MESSAGES 1</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
|
@ -47,6 +47,23 @@ and linker cannot be adjusted before the Glibc install because the
|
||||
Glibc autoconf tests would give false results and defeat the goal
|
||||
of achieving a clean build.</para>
|
||||
|
||||
<para>The glibc-libidn tarball adds support for internationalized
|
||||
domain names (IDN) to Glibc. Many programs that
|
||||
support IDN require the full libidn library (see
|
||||
<ulink url="&blfs-root;view/svn/general/libidn.html"/>),
|
||||
not this add-on.
|
||||
Unpack the tarball from within the Glibc source
|
||||
directory:</para>
|
||||
|
||||
<screen><userinput>tar jxf ../glibc-libidn-&glibc-version;.tar.bz2</userinput></screen>
|
||||
|
||||
<para>In the vi_VN.TCVN locale, <command>bash</command> enters an infinite loop
|
||||
at startup. It is unknown whether this is a <command>bash</command> bug or a
|
||||
Glibc problem. Disable installation of this locale in order to avoid the
|
||||
problem:</para>
|
||||
|
||||
<screen><userinput>sed -i '/vi_VN.TCVN/d' localedata/SUPPORTED</userinput></screen>
|
||||
|
||||
<para>The Glibc documentation recommends building Glibc outside of the source
|
||||
directory in a dedicated build directory:</para>
|
||||
|
||||
@ -121,26 +138,36 @@ Prevent this warning with:</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput>make install</userinput></screen>
|
||||
<screen><userinput>make install_root=/ install</userinput></screen>
|
||||
|
||||
<para>The meaning of the make option:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>install_root=/</parameter></term>
|
||||
<listitem><para>This causes the Glibc Makefile not to run the
|
||||
<filename>scripts/test-installation.pl</filename> script at the end
|
||||
of Glibc installation. Since the toolchain has not been adjusted yet for
|
||||
the new Glibc, this script would test Glibc installed in
|
||||
<filename class="directory">/tools</filename> and fail because the
|
||||
libidn add-on has not been installed there.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>The locales that can make the system respond in a different
|
||||
language were not installed by the above command. Install this
|
||||
with:</para>
|
||||
language were not installed by the above command. None of the
|
||||
locales are required, but, if some of them are misssing, testuites of the
|
||||
future packages would skip important testcases.</para>
|
||||
|
||||
<screen><userinput>make localedata/install-locales</userinput></screen>
|
||||
|
||||
<para>To save time, an alternative to running the
|
||||
previous command (which generates and installs every locale listed in the
|
||||
glibc-&glibc-version;/localedata/SUPPORTED file) is to install only those
|
||||
locales that are wanted and needed. This can be achieved by using the
|
||||
<command>localedef</command> command. Information on this command is located in
|
||||
the <filename>INSTALL</filename> file in the Glibc source. However, there
|
||||
are a number of locales that are essential in order for the tests of
|
||||
future packages to pass, in particular, the
|
||||
<emphasis>libstdc++</emphasis> tests from GCC. The following
|
||||
instructions, instead of the <parameter>install-locales</parameter>
|
||||
target used above, will install the minimum set of locales necessary
|
||||
for the tests to run successfully:</para>
|
||||
<para>Individual locales can be installed using the <command>localedef</command>
|
||||
program. E.g., the first <command>localedef</command> command below combines
|
||||
the <filename>/usr/share/i18n/locales/de_DE</filename> charset-independent
|
||||
locale definition with the
|
||||
<filename>/usr/share/i18n/charmaps/ISO-8859-1.gz</filename> charmap definition
|
||||
and appends the result to the
|
||||
<filename>/usr/lib/locale/locale-archive</filename> file. The following
|
||||
instructions will install the minimum set of locales necessary
|
||||
for the optimal coverage of tests:</para>
|
||||
|
||||
<screen role="nodump"><userinput>mkdir -pv /usr/lib/locale
|
||||
localedef -i de_DE -f ISO-8859-1 de_DE
|
||||
@ -152,23 +179,26 @@ localedef -i es_MX -f ISO-8859-1 es_MX
|
||||
localedef -i fa_IR -f UTF-8 fa_IR
|
||||
localedef -i fr_FR -f ISO-8859-1 fr_FR
|
||||
localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro
|
||||
localedef -i fr_FR.UTF-8 -f UTF-8 fr_FR
|
||||
localedef -i it_IT -f ISO-8859-1 it_IT
|
||||
localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen>
|
||||
|
||||
<para>Some locales installed by the <command>make
|
||||
localedata/install-locales</command> command above are not properly
|
||||
supported by some applications that are in the LFS and BLFS books.
|
||||
Because of the various problems that arise due to application
|
||||
programmers making assumptions that break in such locales, LFS should
|
||||
not be used in locales that utilize multibyte character sets
|
||||
(including UTF-8) or right-to-left writing order. Numerous unofficial
|
||||
and unstable patches are required to fix these problems, and it has
|
||||
been decided by the LFS developers not to support such complex locales at this
|
||||
time. This applies to the ja_JP and fa_IR locales as well—they have been
|
||||
installed only for GCC and Gettext tests to pass, and the
|
||||
<command>watch</command> program (part of the Procps package) does not work
|
||||
properly in them. Various attempts to circumvent these restrictions are
|
||||
documented in internationalization-related hints.</para>
|
||||
<para>In addition, install the locale for your own country, language and
|
||||
character set.</para>
|
||||
|
||||
<para>Alternatively, install all locales
|
||||
listed in the <filename>glibc-&glibc-version;/localedata/SUPPORTED</filename>
|
||||
file (it includes every locale listed above and many more)
|
||||
at once with the following time-consuming command:</para>
|
||||
|
||||
<screen><userinput>make localedata/install-locales</userinput></screen>
|
||||
|
||||
<para>Then use the <command>localedef</command> command to create and
|
||||
install locales not listed in the
|
||||
<filename>glibc-&glibc-version;/localedata/SUPPORTED</filename> file
|
||||
in the unlikely case if you need them.</para>
|
||||
<!-- The Live CD patches the localedata/SUPPORTED file instead of
|
||||
running localedef, the results are equivalent -->
|
||||
|
||||
</sect2>
|
||||
|
||||
@ -277,7 +307,7 @@ getent, iconv, iconvconfig, ldconfig, ldd, lddlibc4, locale,
|
||||
localedef, mtrace, nscd, nscd_nischeck, pcprofiledump, pt_chown, rpcgen,
|
||||
rpcinfo, sln, sprof, tzselect, xtrace, zdump, and zic</seg>
|
||||
<seg>ld.so, libBrokenLocale.[a,so],
|
||||
libSegFault.so, libanl.[a,so], libbsd-compat.a, libc.[a,so],
|
||||
libSegFault.so, libanl.[a,so], libbsd-compat.a, libc.[a,so], libcidn.so,
|
||||
libcrypt.[a,so], libdl.[a,so], libg.a, libieee.a, libm.[a,so], libmcheck.a,
|
||||
libmemusage.so, libnsl.a, libnss_compat.so, libnss_dns.so, libnss_files.so,
|
||||
libnss_hesiod.so, libnss_nis.so, libnss_nisplus.so, libpcprofile.so,
|
||||
@ -366,8 +396,7 @@ by each given program or shared library</para>
|
||||
<varlistentry id="locale">
|
||||
<term><command>locale</command></term>
|
||||
<listitem>
|
||||
<para>Tells the compiler to enable or disable the use of POSIX locales
|
||||
for built-in operations</para>
|
||||
<para>Prints various information about the current locale</para>
|
||||
<indexterm zone="ch-system-glibc locale"><primary sortas="b-locale">locale</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -499,7 +528,10 @@ printing the currently executed function</para>
|
||||
<varlistentry id="libBrokenLocale">
|
||||
<term><filename class="libraryfile">libBrokenLocale</filename></term>
|
||||
<listitem>
|
||||
<para>Used by programs, such as Mozilla, to solve broken locales</para>
|
||||
<para>Used internally by Glibc as a gross hack to get broken programs
|
||||
(e.g., some Motif applications) running. See comments in
|
||||
<filename>glibc-&glibc-version;/locale/broken_cur_max.c</filename> for more
|
||||
information</para>
|
||||
<indexterm zone="ch-system-glibc libBrokenLocale"><primary sortas="c-libBrokenLocale">libBrokenLocale</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -507,7 +539,8 @@ printing the currently executed function</para>
|
||||
<varlistentry id="libSegFault">
|
||||
<term><filename class="libraryfile">libSegFault</filename></term>
|
||||
<listitem>
|
||||
<para>The segmentation fault signal handler</para>
|
||||
<para>The segmentation fault signal handler, used by
|
||||
<command>catchsegv</command></para>
|
||||
<indexterm zone="ch-system-glibc libSegFault"><primary sortas="c-libSegFault">libSegFault</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -537,6 +570,15 @@ in order to run certain Berkey Software Distribution (BSD) programs under Linux<
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libcidn">
|
||||
<term><filename class="libraryfile">libcidn</filename></term>
|
||||
<listitem>
|
||||
<para>Used internally by Glibc for handling internationalized domain names in
|
||||
the <function>getaddrinfo()</function> function</para>
|
||||
<indexterm zone="ch-system-glibc libcrypt"><primary sortas="c-libcrypt">libcrypt</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="libcrypt">
|
||||
<term><filename class="libraryfile">libcrypt</filename></term>
|
||||
<listitem>
|
||||
@ -556,7 +598,8 @@ in order to run certain Berkey Software Distribution (BSD) programs under Linux<
|
||||
<varlistentry id="libg">
|
||||
<term><filename class="libraryfile">libg</filename></term>
|
||||
<listitem>
|
||||
<para>A runtime library for <command>g++</command></para>
|
||||
<para>Dummy library containing no functions. Previously was a runtime library
|
||||
for <command>g++</command></para>
|
||||
<indexterm zone="ch-system-glibc libg"><primary sortas="c-libg">libg</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -564,7 +607,9 @@ in order to run certain Berkey Software Distribution (BSD) programs under Linux<
|
||||
<varlistentry id="libieee">
|
||||
<term><filename class="libraryfile">libieee</filename></term>
|
||||
<listitem>
|
||||
<para>The Institute of Electrical and Electronic Engineers (IEEE) floating point library</para>
|
||||
<para>Linking in this module forces error handling rules for math functions as
|
||||
defined by the Institute of Electrical and Electronic Engineers (IEEE).
|
||||
The default is POSIX.1 error handling</para>
|
||||
<indexterm zone="ch-system-glibc libieee"><primary sortas="c-libieee">libieee</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -580,7 +625,7 @@ in order to run certain Berkey Software Distribution (BSD) programs under Linux<
|
||||
<varlistentry id="libmcheck">
|
||||
<term><filename class="libraryfile">libmcheck</filename></term>
|
||||
<listitem>
|
||||
<para>Contains code run at boot</para>
|
||||
<para>Turns on memory allocation checking when linked to</para>
|
||||
<indexterm zone="ch-system-glibc libmcheck"><primary sortas="c-libmcheck">libmcheck</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -28,6 +28,16 @@ Diffutils, GCC, Gettext, Glibc, Make, Sed, and Texinfo</seg></seglistitem>
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Grep</title>
|
||||
|
||||
<para>The current Grep package has many bugs, especially in the support of
|
||||
multibyte locales. RedHat fixed some of them with the following patch:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&grep-fixes-patch;</userinput></screen>
|
||||
|
||||
<para>In order for the tests added by this patch to pass, the permissions for
|
||||
the test file have to be changed:</para>
|
||||
|
||||
<screen><userinput>chmod +x tests/fmbtest.sh</userinput></screen>
|
||||
|
||||
<para>Prepare Grep for compilation:</para>
|
||||
|
||||
<screen><userinput>./configure --prefix=/usr --bindir=/bin</userinput></screen>
|
||||
|
@ -28,14 +28,35 @@ Gawk, GCC, Glibc, Grep, Make, and Sed</seg></seglistitem>
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Groff</title>
|
||||
|
||||
<para>Apply the patch that adds the <quote>ascii8</quote> and
|
||||
<quote>nippon</quote> devices to Groff:</para>
|
||||
|
||||
<screen><userinput>zcat ../&groff-debian-patch; | patch -Np1</userinput></screen>
|
||||
|
||||
<note><para>These devices are used by Man-DB when formatting non-English manual
|
||||
pages that are not in the ISO-8859-1 encoding. Currently, there is no working
|
||||
patch for Groff-1.19.x that adds this functionality.
|
||||
<!-- Details: http://bugs.debian.org/196762 -->
|
||||
</para></note>
|
||||
|
||||
<para>Many screen fonts don't have Unicode single quotes and dashes in them.
|
||||
Tell Groff to use the ASCII equivalents instead:</para>
|
||||
|
||||
<screen><userinput>sed -i -e 's/2010/002D/' -e 's/2212/002D/' \
|
||||
-e 's/2018/0060/' -e 's/2019/0027/' font/devutf8/R.proto
|
||||
</userinput></screen>
|
||||
|
||||
<para>Groff expects the environment variable <envar>PAGE</envar>
|
||||
to contain the default paper size. For users in the United States,
|
||||
<parameter>PAGE=letter</parameter> is appropriate. Elsewhere,
|
||||
<parameter>PAGE=A4</parameter> may be more suitable.</para>
|
||||
<parameter>PAGE=A4</parameter> may be more suitable.
|
||||
While the default paper size is configured during compilation, it can be
|
||||
overridden later by echoing either <quote>A4</quote> or <quote>letter</quote>
|
||||
to the <filename>/etc/papersize</filename> file.</para>
|
||||
|
||||
<para>Prepare Groff for compilation:</para>
|
||||
|
||||
<screen><userinput>PAGE=<replaceable>[paper_size]</replaceable> ./configure --prefix=/usr</userinput></screen>
|
||||
<screen><userinput>PAGE=<replaceable>[paper_size]</replaceable> ./configure --prefix=/usr --enable-multibyte</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
|
@ -25,22 +25,12 @@
|
||||
<segmentedlist>
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem>
|
||||
<seg>GCC, Glibc, Make, Linux-Headers, and Sed</seg>
|
||||
<seg>DB, GCC, Glibc, Make, and Linux-Headers</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
</sect2>
|
||||
<sect2 role="installation">
|
||||
<title>Installation of IPRoute2</title>
|
||||
<para>The <command>arpd</command> binary included in this package is
|
||||
dependent on Berkeley DB. Because <command>arpd</command> is not a very
|
||||
common requirement on a base Linux system, remove the dependency on
|
||||
Berkeley DB by applying the <command>sed</command> command below. If
|
||||
the <command>arpd</command> binary is needed, instructions for
|
||||
compiling Berkeley DB can be found in the BLFS Book at <ulink
|
||||
url="&blfs-root;view/svn/server/databases.html#db"/>.
|
||||
</para>
|
||||
|
||||
<screen><userinput>sed -i '/^TARGETS/s@arpd@@g' misc/Makefile</userinput></screen>
|
||||
|
||||
<para>Prepare IPRoute2 for compilation:</para>
|
||||
<screen><userinput>chmod u+x configure &&
|
||||
@ -68,6 +58,16 @@
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput>make SBINDIR=/sbin install</userinput></screen>
|
||||
|
||||
<para>The <command>arpd</command> binary links against the DB libraries
|
||||
that reside in <filename class="directory">/usr</filename> and
|
||||
uses a database in <filename>/var/lib/arpd/arpd.db</filename>. Thus,
|
||||
according to the FHS, it must be
|
||||
in <filename class="directory">/usr/sbin</filename>. Move it there:
|
||||
</para>
|
||||
|
||||
<screen><userinput>mv -v /sbin/arpd /usr/sbin</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-iproute2" role="content">
|
||||
@ -75,8 +75,9 @@
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<seglistitem>
|
||||
<seg>ctstat (link to lnstat), ifcfg, ifstat, ip, lnstat, nstat, routef,
|
||||
routel, rtacct, rtmon, rtpr, rtstat (link to lnstat), ss, and tc.
|
||||
<seg>arpd, ctstat (link to lnstat), ifcfg, ifstat, ip, lnstat, nstat,
|
||||
routef, routel, rtacct, rtmon, rtpr, rtstat (link to lnstat), ss,
|
||||
and tc.
|
||||
</seg>
|
||||
</seglistitem>
|
||||
</segmentedlist>
|
||||
@ -84,6 +85,20 @@
|
||||
<variablelist><bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
<varlistentry id="arpd">
|
||||
<term>
|
||||
<command>arpd</command>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Userspace ARP daemon, useful in really large networks, where
|
||||
the kernelspace ARP implementation is insufficient, or
|
||||
when setting up a honeypot</para>
|
||||
<indexterm zone="ch-system-iproute2 arpd">
|
||||
<primary sortas="b-arpd">arpd</primary>
|
||||
</indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="ctstat">
|
||||
<term>
|
||||
<command>ctstat</command>
|
||||
@ -292,7 +307,7 @@
|
||||
</term>
|
||||
<listitem>
|
||||
<para>Traffic Controlling Executable; this is for Quality Of
|
||||
Service (QOS) and Class Of Service (COS)
|
||||
Service (QOS) and Class Of Service (COS)
|
||||
implementations
|
||||
</para>
|
||||
|
||||
|
@ -28,6 +28,15 @@ Diffutils, Flex, GCC, Gettext, Glibc, Grep, Gzip, M4, Make, and Sed</seg></segli
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Kbd</title>
|
||||
|
||||
<para>The behaviour of the Backspace and Delete keys is not consistent across the
|
||||
keymaps in the Kbd package. The following patch fixes this issue for
|
||||
i386 keymaps:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&kbd-backspace-patch;</userinput></screen>
|
||||
|
||||
<para>After patching, the Backspace key generates the character with code 127,
|
||||
and the Delete key generates a well-known escape sequence.</para>
|
||||
|
||||
<para>Patch Kbd to fix a bug in <command>setfont</command> that is triggered
|
||||
when compiling with GCC-&gcc-version;:</para>
|
||||
|
||||
@ -47,6 +56,11 @@ when compiling with GCC-&gcc-version;:</para>
|
||||
|
||||
<screen><userinput>make install</userinput></screen>
|
||||
|
||||
<note><para>For some languages (e.g., Belarusian) the Kbd package doesn't
|
||||
provide a useful keymap (the stock <quote>by</quote> keymap assumes the
|
||||
ISO-8859-5 encoding, while everybody uses CP1251 instead). Users of such
|
||||
languages have to download working keymaps separately.</para></note>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-kbd" role="content"><title>Contents of Kbd</title>
|
||||
@ -274,8 +288,9 @@ pressed on the keyboard</para>
|
||||
<varlistentry id="unicode_start">
|
||||
<term><command>unicode_start</command></term>
|
||||
<listitem>
|
||||
<para>Puts the keyboard and console in UNICODE mode. Never use it on LFS,
|
||||
because applications are not configured to support UNICODE.</para>
|
||||
<para>Puts the keyboard and console in UNICODE mode. Don't use this program
|
||||
unless your keymap file is in the ISO-8859-1 encoding. For other encodings,
|
||||
this utility produces incorrect results.</para>
|
||||
<indexterm zone="ch-system-kbd unicode_start"><primary sortas="b-unicode_start">unicode_start</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
265
chapter06/man-db.xml
Normal file
265
chapter06/man-db.xml
Normal file
@ -0,0 +1,265 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
<sect1 id="ch-system-man-db" role="wrap">
|
||||
<title>Man-DB-&man-db-version;</title>
|
||||
<?dbhtml filename="man-db.html"?>
|
||||
|
||||
<indexterm zone="ch-system-man-db"><primary sortas="a-Man-DB">Man-DB</primary></indexterm>
|
||||
|
||||
<sect2 role="package"><title/>
|
||||
<para>The Man-DB package contains programs for finding and viewing man pages.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
<seglistitem><seg>0.1 SBU</seg><seg>1.1 MB</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem><seg>Bash, Binutils, Coreutils, Gawk, GCC, DB,
|
||||
Glibc, Gettext, Grep, Make, and Sed</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Man-DB</title>
|
||||
|
||||
<para>Three adjustments need to be made to the sources of Man-DB.</para>
|
||||
|
||||
<para>The first one changes the location of translated manual pages that come
|
||||
with Man-DB, in order for them to be accessible in both traditional and
|
||||
UTF-8 locales:</para>
|
||||
|
||||
<screen><userinput>mv man/de{_DE.88591,} &&
|
||||
mv man/es{_ES.88591,} &&
|
||||
mv man/it{_IT.88591,} &&
|
||||
mv man/ja{_JP.eucJP,} &&
|
||||
sed -i 's,\*_\*,??,' man/Makefile.in</userinput></screen>
|
||||
|
||||
<para>The second change is a <command>sed</command> substitution to delete the
|
||||
<quote>/usr/man</quote> lines in the
|
||||
<filename>man_db.conf</filename> file to prevent redundant results when
|
||||
using programs such as <command>whatis</command>:</para>
|
||||
|
||||
<screen><userinput>sed -i '/\t\/usr\/man/d' src/man_db.conf.in</userinput></screen>
|
||||
|
||||
<para>The third change accounts for programs that Man-DB should be able
|
||||
to find at runtime, but that haven't been installed yet:</para>
|
||||
|
||||
<screen><userinput>cat >>include/manconfig.h.in <<"EOF"
|
||||
<literal>#define WEB_BROWSER "exec /usr/bin/lynx"
|
||||
#define COL "/usr/bin/col"
|
||||
#define VGRIND "/usr/bin/vgrind"
|
||||
#define GRAP "/usr/bin/grap"</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>The <command>col</command> program is a part of the Util-linux package,
|
||||
<command>lynx</command> is a text-based web browser
|
||||
(see BLFS for installation instructions),
|
||||
<command>vgrind</command> converts program sources to Groff input,
|
||||
and <command>grap</command> is useful for typesetting graphs in Groff documents.
|
||||
The <command>vgrind</command> and <command>grap</command> programs are
|
||||
not normally needed for viewing manual pages. They are
|
||||
not part of LFS or BLFS, but you should be able to install them yourself
|
||||
after finishing LFS if you wish to do so.</para>
|
||||
|
||||
<para>Prepare Man-DB for compilation:</para>
|
||||
|
||||
<screen><userinput>./configure --prefix=/usr --enable-mb-groff --disable-setuid</userinput></screen>
|
||||
|
||||
<para>The meaning of the configure options:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-mb-groff</parameter></term>
|
||||
<listitem><para>This tells the <command>man</command> program to
|
||||
use the <quote>ascii8</quote> and <quote>nippon</quote> Groff devices for formatting non-ISO-8859-1
|
||||
manual pages.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><parameter>--disable-setuid</parameter></term>
|
||||
<listitem><para>This disables making the <command>man</command> program
|
||||
setuid to user <quote>man</quote>.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput>make</userinput></screen>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput>make install</userinput></screen>
|
||||
|
||||
<para>Additional information regarding the compression of
|
||||
man and info pages can be found in the BLFS book at
|
||||
<ulink url="&blfs-root;view/cvs/postlfs/compressdoc.html"/>.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2><title>Non-English Manual Pages in LFS</title>
|
||||
|
||||
<para>Linux distributions have different policies concerning the character
|
||||
encoding in which manual pages are stored in the filesystem. E.g., RedHat
|
||||
stores all manual pages in UTF-8, while Debian uses language-specific
|
||||
(mostly 8-bit) encodings. This leads to incompatibility of packages with
|
||||
manual pages designed for different distributions.</para>
|
||||
|
||||
<para>LFS uses the same conventions as Debian. The relationship between
|
||||
language codes and the expected encoding of manual pages is listed below.
|
||||
Man-DB automatically converts them to the locale encoding while viewing.</para>
|
||||
|
||||
<!-- Origin: man-db-2.4.3/src/encodings.c -->
|
||||
<table frame='all'><title>Expected character encoding of manual pages</title>
|
||||
<tgroup cols='2' align='center' colsep='1' rowsep='1'>
|
||||
<thead>
|
||||
<row><entry>Language (code)</entry><entry>Encoding</entry></row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row><entry>Danish (da)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>German (de)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>English (en)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Spanish (es)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Finnish (fi)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>French (fr)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Irish (ga)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Galician (gl)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Indonesian (id)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Icelandic (is)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Italian (it)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Dutch (nl)</entry><entry>ISO-8859-1</entry></row>
|
||||
<!-- BUG: "no" is deprecated, should use "nb" or "nn" and symlinks -->
|
||||
<row><entry>Norwegian (no)</entry><entry>ISO-8859-1</entry></row>
|
||||
<!-- END BUG -->
|
||||
<row><entry>Portuguese (pt)</entry><entry>ISO-8859-1</entry></row>
|
||||
<row><entry>Swedish (sv)</entry><entry>ISO-8859-1</entry></row>
|
||||
<!-- Languages below require patched groff -->
|
||||
<row><entry>Czech (cs)</entry><entry>ISO-8859-2</entry></row>
|
||||
<row><entry>Croatian (hr)</entry><entry>ISO-8859-2</entry></row>
|
||||
<row><entry>Hungarian (hu)</entry><entry>ISO-8859-2</entry></row>
|
||||
<row><entry>Japanese (ja)</entry><entry>EUC-JP</entry></row>
|
||||
<row><entry>Korean (ko)</entry><entry>EUC-KR</entry></row>
|
||||
<row><entry>Polish (pl)</entry><entry>ISO-8859-2</entry></row>
|
||||
<row><entry>Russian (ru)</entry><entry>KOI8-R</entry></row>
|
||||
<row><entry>Slovak (sk)</entry><entry>ISO-8859-2</entry></row>
|
||||
<row><entry>Turkish (tr)</entry><entry>ISO-8859-9</entry></row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</table>
|
||||
|
||||
<note><para>Manual pages in languages not in the list are not supported.
|
||||
Norwegian doesn't work now because of the transition from no_NO to nb_NO
|
||||
locale, and Korean is non-functional because of the incomplete Groff patch.
|
||||
</para></note>
|
||||
|
||||
<para>If upstream distributes the manual pages in the same encoding as
|
||||
Man-DB expects, the manual pages can be copied to
|
||||
<filename class="directory">/usr/share/man/<replaceable>[language code]</replaceable></filename>.
|
||||
E.g., French manual pages
|
||||
(<ulink url="http://ccb.club.fr/man/man-fr-1.58.0.tar.bz2"/>)
|
||||
can be installed with the following command:</para>
|
||||
|
||||
<screen role="nodump"><userinput>mkdir -p /usr/share/man/fr &&
|
||||
cp -rv man? /usr/share/man/fr</userinput></screen>
|
||||
|
||||
<para>If upstream distributes manual pages in UTF-8 (i.e., <quote>for RedHat</quote>)
|
||||
instead of the encoding listed in the table above, they have to be
|
||||
converted from UTF-8 to the encoding listed in the table before
|
||||
installation. E.g., Spanish manual pages
|
||||
(<ulink url="http://ditec.um.es/~piernas/manpages-es/man-pages-es-1.55.tar.bz2"/>)
|
||||
can be installed with the following commands:</para>
|
||||
|
||||
<screen role="nodump"><userinput>mkdir -p /usr/share/man/es &&
|
||||
find man? -type f | grep -v 'man7/iso_8859-7.7' | \
|
||||
while read F ; do
|
||||
iconv -f UTF-8 -t ISO-8859-1 $F >tmp ; mv tmp $F
|
||||
done &&
|
||||
cp -rv man? /usr/share/man/es</userinput></screen>
|
||||
|
||||
<note>The need to exclude the <filename>man7/iso_8859-7.7</filename> file
|
||||
from the conversion process because it is already in ISO-8859-1 is a packaging
|
||||
bug in man-pages-es-1.55. Future versions should not require this workaround.</note>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="contents-man-db" role="content"><title>Contents of Man-DB</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<seglistitem><seg>accessdb, apropos, catman, lexgrog, man, mandb, manpath,
|
||||
and whatis</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist><bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
|
||||
<varlistentry id="accessdb">
|
||||
<term><command>accessdb</command></term>
|
||||
<listitem>
|
||||
<para>Dumps the <command>whatis</command> database contents in human-readable form</para>
|
||||
<indexterm zone="ch-system-man-db accessdb"><primary sortas="b-accessdb">accessdb</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="apropos">
|
||||
<term><command>apropos</command></term>
|
||||
<listitem>
|
||||
<para>Searches the <command>whatis</command> database and displays the short descriptions
|
||||
of system commands that contain a given string</para>
|
||||
<indexterm zone="ch-system-man-db apropos"><primary sortas="b-apropos">apropos</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="catman">
|
||||
<term><command>catman</command></term>
|
||||
<listitem>
|
||||
<para>Creates or updates the pre-formatted manual pages</para>
|
||||
<indexterm zone="ch-system-man-db catman"><primary sortas="b-catman">catman</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="lexgrog">
|
||||
<term><command>lexgrog</command></term>
|
||||
<listitem>
|
||||
<para>Displays one-line summary information about a given manual page</para>
|
||||
<indexterm zone="ch-system-man-db lexgrog"><primary sortas="b-lexgrog">lexgrog</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="man">
|
||||
<term><command>man</command></term>
|
||||
<listitem>
|
||||
<para>Formats and displays the requested manual page</para>
|
||||
<indexterm zone="ch-system-man-db man"><primary sortas="b-man">man</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="mandb">
|
||||
<term><command>mandb</command></term>
|
||||
<listitem>
|
||||
<para>Creates or updates the <command>whatis</command> database</para>
|
||||
<indexterm zone="ch-system-man-db mandb"><primary sortas="b-mandb">mandb</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="whatis">
|
||||
<term><command>whatis</command></term>
|
||||
<listitem>
|
||||
<para>Searches the <command>whatis</command> database and displays the short descriptions
|
||||
of system commands that contain the given keyword as a separate
|
||||
word</para>
|
||||
<indexterm zone="ch-system-man-db whatis"><primary sortas="b-whatis">whatis</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
@ -1,180 +0,0 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||
%general-entities;
|
||||
]>
|
||||
<sect1 id="ch-system-man" role="wrap">
|
||||
<title>Man-&man-version;</title>
|
||||
<?dbhtml filename="man.html"?>
|
||||
|
||||
<indexterm zone="ch-system-man"><primary sortas="a-Man">Man</primary></indexterm>
|
||||
|
||||
<sect2 role="package"><title/>
|
||||
<para>The Man package contains programs for finding and viewing man pages.</para>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&buildtime;</segtitle>
|
||||
<segtitle>&diskspace;</segtitle>
|
||||
<seglistitem><seg>0.1 SBU</seg><seg>1.3 MB</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem><seg>Bash, Binutils, Coreutils, Gawk, GCC,
|
||||
Glibc, Grep, Make, and Sed</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
</sect2>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Man</title>
|
||||
|
||||
<para>Two adjustments need to be made to the sources of Man.</para>
|
||||
|
||||
<para>The first is a <command>sed</command> substitution to add the
|
||||
<parameter>-R</parameter> switch to the <envar>PAGER</envar>
|
||||
variable so that escape sequences are properly handled by Less:</para>
|
||||
|
||||
<screen><userinput>sed -i 's@-is@&R@g' configure</userinput></screen>
|
||||
|
||||
<para>The second is also a <command>sed</command> substitution to comment out the
|
||||
<quote>MANPATH /usr/man</quote> line in the
|
||||
<filename>man.conf</filename> file to prevent redundant results when
|
||||
using programs such as <command>whatis</command>:</para>
|
||||
|
||||
<screen><userinput>sed -i 's@MANPATH./usr/man@#&@g' src/man.conf.in</userinput></screen>
|
||||
|
||||
<para>Prepare Man for compilation:</para>
|
||||
|
||||
<screen><userinput>./configure -confdir=/etc</userinput></screen>
|
||||
|
||||
<para>The meaning of the configure options:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>-confdir=/etc</parameter></term>
|
||||
<listitem><para>This tells the <command>man</command> program to look for the
|
||||
<filename>man.conf</filename> configuration file in the <filename
|
||||
class="directory">/etc</filename> directory.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput>make</userinput></screen>
|
||||
|
||||
<para>This package does not come with a test suite.</para>
|
||||
|
||||
<para>Install the package:</para>
|
||||
|
||||
<screen><userinput>make install</userinput></screen>
|
||||
|
||||
<note><para>If you will be working on a terminal that does not support text
|
||||
attributes such as color and bold, you can disable Select Graphic Rendition
|
||||
(SGR) escape sequences by editing the <filename>man.conf</filename> file and
|
||||
adding the <parameter>-c</parameter> option to the <envar>NROFF</envar>
|
||||
variable. If you use multiple terminal types for one computer it may be better
|
||||
to selectively add the <envar>GROFF_NO_SGR</envar> environment variable for the
|
||||
terminals that do not support SGR.</para></note>
|
||||
|
||||
<para>If the character set of the locale uses 8-bit characters, search for the
|
||||
line beginning with <quote>NROFF</quote> in <filename>/etc/man.conf</filename>,
|
||||
and verify that it matches the following:</para>
|
||||
|
||||
<screen>NROFF /usr/bin/nroff -Tlatin1 -mandoc</screen>
|
||||
|
||||
<para>Note that <quote>latin1</quote> should be used even if it is not
|
||||
the character set of the locale. The reason is that, according to the
|
||||
specification, <command>groff</command> has no means of typesetting
|
||||
characters outside International Organization for Standards
|
||||
(ISO) 8859-1 without some strange escape codes. When formatting man
|
||||
pages, <command>groff</command> thinks that they are in the ISO 8859-1
|
||||
encoding and this <parameter>-Tlatin1</parameter> switch tells
|
||||
<command>groff</command> to use the same encoding for output. Since
|
||||
<command>groff</command> does no recoding of input characters, the
|
||||
formatted result is really in the same encoding as input, and therefore
|
||||
it is usable as the input for a pager.</para>
|
||||
|
||||
<para>This does not solve the problem of a non-working
|
||||
<command>man2dvi</command> program for localized man pages in
|
||||
non-ISO 8859-1 locales. Also, it does not work with multibyte
|
||||
character sets. The first problem does not currently have a solution.
|
||||
The second issue is not of concern because the LFS installation does
|
||||
not support multibyte character sets.</para>
|
||||
|
||||
<para>Additional information with regards to the compression of
|
||||
man and info pages can be found in the BLFS book at
|
||||
<ulink url="&blfs-root;view/cvs/postlfs/compressdoc.html"/>.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="contents-man" role="content"><title>Contents of Man</title>
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>Installed programs</segtitle>
|
||||
<seglistitem><seg>apropos, makewhatis, man,
|
||||
man2dvi, man2html, and whatis</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist><bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
<?dbfo list-presentation="list"?>
|
||||
<?dbhtml list-presentation="table"?>
|
||||
|
||||
<varlistentry id="apropos">
|
||||
<term><command>apropos</command></term>
|
||||
<listitem>
|
||||
<para>Searches the <command>whatis</command> database and displays the short descriptions
|
||||
of system commands that contain a given string</para>
|
||||
<indexterm zone="ch-system-man apropos"><primary sortas="b-apropos">apropos</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="makewhatis">
|
||||
<term><command>makewhatis</command></term>
|
||||
<listitem>
|
||||
<para>Builds the <command>whatis</command> database; it reads all the man pages
|
||||
in the <envar>MANPATH</envar> and writes the name and a short description in the
|
||||
<command>whatis</command> database for each page</para>
|
||||
<indexterm zone="ch-system-man makewhatis"><primary sortas="b-makewhatis">makewhatis</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="man">
|
||||
<term><command>man</command></term>
|
||||
<listitem>
|
||||
<para>Formats and displays the requested on-line man page</para>
|
||||
<indexterm zone="ch-system-man man"><primary sortas="b-man">man</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="man2dvi">
|
||||
<term><command>man2dvi</command></term>
|
||||
<listitem>
|
||||
<para>Converts a man page into dvi format</para>
|
||||
<indexterm zone="ch-system-man man2dvi"><primary sortas="b-man2dvi">man2dvi</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="man2html">
|
||||
<term><command>man2html</command></term>
|
||||
<listitem>
|
||||
<para>Converts a man page into HTML</para>
|
||||
<indexterm zone="ch-system-man man2html"><primary sortas="b-man2html">man2html</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry id="whatis">
|
||||
<term><command>whatis</command></term>
|
||||
<listitem>
|
||||
<para>Searches the <command>whatis</command> database and displays the short descriptions
|
||||
of system commands that contain the given keyword as a separate
|
||||
word</para>
|
||||
<indexterm zone="ch-system-man whatis"><primary sortas="b-whatis">whatis</primary></indexterm>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
@ -28,10 +28,49 @@ Gawk, GCC, Glibc, Grep, Make, and Sed</seg></seglistitem>
|
||||
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Ncurses</title>
|
||||
<!-- Uncomment if using a dated ncurses release instead of a numbered one.
|
||||
|
||||
<para>Since the release of Ncurses-&ncurses-version;, some bugs have been fixed
|
||||
and features added. The most important news are .......
|
||||
To get these fixes and features, apply the rollup patch:</para>
|
||||
|
||||
<screen><userinput>bzcat ../&ncurses-rollup-patch; | patch -Np1</userinput></screen>
|
||||
-->
|
||||
|
||||
<para>Since the release of Ncurses-&ncurses-version;, a memory leak and some
|
||||
display bugs were found and fixed upstream. Apply those fixes:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&ncurses-fixes-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare Ncurses for compilation:</para>
|
||||
|
||||
<screen><userinput>./configure --prefix=/usr --with-shared --without-debug</userinput></screen>
|
||||
<screen><userinput>./configure --prefix=/usr --with-shared --without-debug --enable-widec</userinput></screen>
|
||||
|
||||
<para>The meaning of the configure options:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-widec</parameter></term>
|
||||
<listitem><para>This switch causes wide-character libraries
|
||||
(e.g., <filename class="libraryfile">libncursesw.so.&ncurses-version;</filename>)
|
||||
to be built instead of normal ones
|
||||
(e.g., <filename class="libraryfile">libncurses.so.&ncurses-version;</filename>).
|
||||
These wide-character libraries are usable in both multibyte and traditional 8-bit
|
||||
locales, while normal libraries work properly only in 8-bit locales.
|
||||
Wide-character and normal libraries are source-compatible, but not
|
||||
binary-compatible.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<!--
|
||||
<varlistentry>
|
||||
<term><parameter>- -without-cxx-binding</parameter></term>
|
||||
<listitem><para>This optional switch causes the
|
||||
<filename class="libraryfile">libncurses++w.a</filename> library
|
||||
not to be built. Nothing in LFS and BLFS uses this library.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
-->
|
||||
</variablelist>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
@ -49,18 +88,49 @@ Gawk, GCC, Glibc, Grep, Make, and Sed</seg></seglistitem>
|
||||
|
||||
<para>Fix a library that should not be executable:</para>
|
||||
|
||||
<screen><userinput>chmod -v 644 /usr/lib/libncurses++.a</userinput></screen>
|
||||
<screen><userinput>chmod -v 644 /usr/lib/libncurses++w.a</userinput></screen>
|
||||
|
||||
<para>Move the libraries to the <filename class="directory">/lib</filename> directory,
|
||||
where they are expected to reside:</para>
|
||||
|
||||
<screen><userinput>mv -v /usr/lib/libncurses.so.5* /lib</userinput></screen>
|
||||
<screen><userinput>mv -v /usr/lib/libncursesw.so.5* /lib</userinput></screen>
|
||||
|
||||
<para>Because the libraries have been moved, a few symlinks point to
|
||||
non-existent files. Recreate those symlinks:</para>
|
||||
<para>Because the libraries have been moved, one symlink points to
|
||||
a non-existent file. Recreate it:</para>
|
||||
|
||||
<screen><userinput>ln -sfv ../../lib/libncurses.so.5 /usr/lib/libncurses.so
|
||||
ln -sfv libncurses.so /usr/lib/libcurses.so</userinput></screen>
|
||||
<screen><userinput>ln -sfv ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so</userinput></screen>
|
||||
|
||||
<para>Many applications still expect the linker to be able to find
|
||||
non-wide-character Ncurses libraries. Trick such applications into linking with
|
||||
wide-character libraries by means of symlinks and linker scripts:</para>
|
||||
|
||||
<screen><userinput>for lib in curses ncurses form panel menu ; do \
|
||||
rm -vf /usr/lib/lib${lib}.so ; \
|
||||
echo "INPUT(-l${lib}w)" >/usr/lib/lib${lib}.so ; \
|
||||
ln -sfv lib${lib}w.a /usr/lib/lib${lib}.a ; \
|
||||
done &&
|
||||
ln -sfv libncurses++w.a /usr/lib/libncurses++.a</userinput></screen>
|
||||
|
||||
<para>Finally, make sure that old applications that look for
|
||||
<filename class="libaryfile">-lcurses</filename> at build time are still
|
||||
buildable:</para>
|
||||
|
||||
<screen><userinput>echo "INPUT(-lncursesw)" >/usr/lib/libcursesw.so &&
|
||||
ln -sfv libncurses.so /usr/lib/libcurses.so &&
|
||||
ln -sfv libncursesw.a /usr/lib/libcursesw.a &&
|
||||
ln -sfv libncurses.a /usr/lib/libcurses.a</userinput></screen>
|
||||
|
||||
<note><para>The instructions above don't create non-wide-character Ncurses
|
||||
libraries since no package installed by compiling from sources would link
|
||||
against them at runtime.
|
||||
If you must have such libraries because of some binary-only application,
|
||||
build them with the following commands:</para>
|
||||
<screen role="nodump"><userinput>make distclean &&
|
||||
./configure --prefix=/usr --with-shared --without-normal \
|
||||
--without-debug --without-cxx-binding &&
|
||||
make sources libs &&
|
||||
cp -av lib/lib*.so.5* /usr/lib</userinput></screen>
|
||||
</note>
|
||||
</sect2>
|
||||
|
||||
|
||||
@ -71,8 +141,10 @@ ln -sfv libncurses.so /usr/lib/libcurses.so</userinput></screen>
|
||||
<segtitle>Installed libraries</segtitle>
|
||||
<seglistitem><seg>captoinfo (link to tic), clear, infocmp, infotocap (link to tic),
|
||||
reset (link to tset), tack, tic, toe, tput, and tset</seg>
|
||||
<seg>libcurses.[a,so] (link to libncurses.[a,so]), libform.[a,so], libmenu.[a,so],
|
||||
libncurses++.a, libncurses.[a,so], and libpanel.[a,so]</seg></seglistitem>
|
||||
<seg>libcursesw.[a,so] (symlink and linker script to libncursesw.[a,so]),
|
||||
libformw.[a,so], libmenuw.[a,so],
|
||||
libncurses++w.a, libncursesw.[a,so], libpanelw.[a,so] and their
|
||||
non-wide-character counterparts without "w" in the library names.</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
|
||||
<variablelist><bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
||||
@ -212,4 +284,3 @@ menu displayed during the kernel's <command>make menuconfig</command></para>
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
|
||||
|
@ -20,7 +20,7 @@
|
||||
|
||||
<segmentedlist>
|
||||
<segtitle>&dependencies;</segtitle>
|
||||
<seglistitem><seg>Bash, Binutils, Coreutils, Diffutils,
|
||||
<seglistitem><seg>Bash, Binutils, Coreutils, DB, Diffutils,
|
||||
Gawk, GCC, Glibc, Grep, Make, and Sed</seg></seglistitem>
|
||||
</segmentedlist>
|
||||
</sect2>
|
||||
|
@ -43,7 +43,9 @@ GCC, Glibc, Grep, Make, Ncurses, and Sed</seg></seglistitem>
|
||||
<varlistentry>
|
||||
<term><parameter>SHLIB_LIBS=-lncurses</parameter></term>
|
||||
<listitem><para>This option forces Readline to link against the
|
||||
<filename class="libraryfile">libncurses</filename> library.</para></listitem>
|
||||
<filename class="libraryfile">libncurses</filename>
|
||||
(really, <filename class="libraryfile">libncursesw</filename>)
|
||||
library.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
|
@ -48,6 +48,11 @@ prior to building Shadow. Then add <parameter>--with-libcrack</parameter> to the
|
||||
<screen><userinput>sed -i 's/groups$(EXEEXT) //' src/Makefile
|
||||
find man -name Makefile -exec sed -i '/groups/d' {} \;</userinput></screen>
|
||||
|
||||
<para>Disable the installation of Chinese and Korean manual pages, since Man-DB
|
||||
cannot format them properly:</para>
|
||||
|
||||
<screen><userinput>sed -i -e 's/ ko//' -e 's/ zh_CN zh_TW//' man/Makefile</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput>make</userinput></screen>
|
||||
|
@ -33,6 +33,12 @@ Sysklogd with Linux 2.6 series kernels</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&sysklogd-fixes-patch;</userinput></screen>
|
||||
|
||||
<para>The following patch makes sysklogd treat bytes in the 0x80--0x9f range
|
||||
literally in the messages being logged, instead of replacing them with octal
|
||||
codes. Unpatched sysklogd would damage messages in the UTF-8 encoding.</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&sysklogd-8bit-patch;</userinput></screen>
|
||||
|
||||
<para>Compile the package:</para>
|
||||
|
||||
<screen><userinput>make</userinput></screen>
|
||||
|
@ -84,26 +84,15 @@ ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now
|
||||
|
||||
su:S016:once:/sbin/sulogin
|
||||
|
||||
1:2345:respawn:/sbin/agetty -I '\033(K' tty1 9600
|
||||
2:2345:respawn:/sbin/agetty -I '\033(K' tty2 9600
|
||||
3:2345:respawn:/sbin/agetty -I '\033(K' tty3 9600
|
||||
4:2345:respawn:/sbin/agetty -I '\033(K' tty4 9600
|
||||
5:2345:respawn:/sbin/agetty -I '\033(K' tty5 9600
|
||||
6:2345:respawn:/sbin/agetty -I '\033(K' tty6 9600
|
||||
1:2345:respawn:/sbin/agetty tty1 9600
|
||||
2:2345:respawn:/sbin/agetty tty2 9600
|
||||
3:2345:respawn:/sbin/agetty tty3 9600
|
||||
4:2345:respawn:/sbin/agetty tty4 9600
|
||||
5:2345:respawn:/sbin/agetty tty5 9600
|
||||
6:2345:respawn:/sbin/agetty tty6 9600
|
||||
|
||||
# End /etc/inittab</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>The <parameter>-I '\033(K'</parameter> option tells
|
||||
<command>agetty</command> to send this escape sequence to the terminal
|
||||
before doing anything else. This escape sequence switches the console
|
||||
character set to a user-defined one, which can be modified by running
|
||||
the <command>setfont</command> program. The <command>console</command>
|
||||
initscript from the LFS-Bootscripts package calls the <command>setfont</command>
|
||||
program during system startup. Sending this escape sequence is
|
||||
necessary for people who use non-ISO 8859-1 screen fonts, but it does
|
||||
not affect native English speakers.</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
||||
|
@ -29,6 +29,14 @@ Diffutils, GCC, Gettext, Glibc, Grep, Make, Ncurses, and Sed</seg></seglistitem>
|
||||
<sect2 role="installation">
|
||||
<title>Installation of Texinfo</title>
|
||||
|
||||
<para>The <command>info</command> program makes assumptions such as that
|
||||
a string occupies the same number of character cells on the screen and bytes
|
||||
in memory and that one can break the string anywhere, which fail in
|
||||
UTF-8 based locales. The patch below makes them valid
|
||||
by falling back to English messages when a multibyte locale is in use:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&texinfo-multibyte-patch;</userinput></screen>
|
||||
|
||||
<para>Texinfo allows local users to overwrite arbitrary files via a symlink
|
||||
attack on temporary files. Apply the following patch to fix this:</para>
|
||||
|
||||
@ -63,6 +71,7 @@ root of the TeX tree if, for example, a TeX package will be installed
|
||||
later.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<!-- FIXME: doesn't the TeX installation in BLFS overwrite files there? -->
|
||||
|
||||
<para>The Info documentation system uses a plain text file to hold its
|
||||
list of menu entries. The file is located at
|
||||
|
@ -78,6 +78,7 @@ the configuration files here:</para>
|
||||
|
||||
<screen><userinput>install -m644 -D -v docs/writing_udev_rules/index.html /usr/share/doc/udev-&udev-version;/index.html</userinput></screen>
|
||||
|
||||
<!-- Not for the LiveCD -->
|
||||
<!-- Edit Me -->
|
||||
<para>Run the <command>udevstart</command> program to create our full
|
||||
complement of device nodes.</para>
|
||||
|
@ -53,7 +53,7 @@ class="directory">/etc</filename>:</para>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><parameter>--enable-multibyte</parameter></term>
|
||||
<listitem><para>This optional but highly recommended switch enables support for
|
||||
<listitem><para>This switch enables support for
|
||||
editing files in multibyte character encodings. This is needed if using a
|
||||
locale with a multibyte character set. This switch is also helpful to be able to
|
||||
edit text files initially created in Linux distributions like Fedora Core that
|
||||
@ -75,6 +75,18 @@ redirecting the output to a log file.</para>
|
||||
|
||||
<screen><userinput>make install</userinput></screen>
|
||||
|
||||
<para>In UTF-8 locales, the <command>vimtutor</command> program
|
||||
tries to convert the tutorials from ISO-8859-1 to UTF-8. Since
|
||||
some tutorials are not in ISO-8859-1, the text in them is thus made unreadable.
|
||||
If you unpacked the <filename>vim-&vim-version;-lang.tar.gz</filename>
|
||||
archive and are going to use a UTF-8 based locale, remove non-ISO-8859-1
|
||||
tutorials. An English tutorial will be used instead.</para>
|
||||
<!-- Removal is used instead of conversion in order for the user to be able to
|
||||
painlessly revert his UTF-8 locale choice. -->
|
||||
|
||||
<screen><userinput>rm -f /usr/share/vim/vim63/tutor/tutor.{gr,pl,ru,sk}
|
||||
rm -f /usr/share/vim/vim63/tutor/tutor.??.*</userinput></screen>
|
||||
|
||||
<para>Many users are used to using <command>vi</command> instead of
|
||||
<command>vim</command>. To allow execution of <command>vim</command>
|
||||
when users habitually enter <command>vi</command>, create a
|
||||
|
@ -17,96 +17,209 @@
|
||||
|
||||
<para>This section discusses how to configure the <command>console</command>
|
||||
bootscript that sets up the keyboard map and the console font. If non-ASCII
|
||||
characters (e.g., the British pound sign and Euro character) will not be used
|
||||
and the keyboard is a U.S. one, skip this section. Without the configuration
|
||||
file, the <command>console</command> bootscript will do nothing.</para>
|
||||
characters (e.g., the copyright sign, the British pound sign and Euro symbol)
|
||||
will not be used and the keyboard is a U.S. one, skip this section. Without
|
||||
the configuration file, the <command>console</command> bootscript will do
|
||||
nothing.</para>
|
||||
|
||||
<para>The <command>console</command> script reads the
|
||||
<filename>/etc/sysconfig/console</filename> file for configuration information.
|
||||
Decide which keymap and screen font will be used. Various language-specific
|
||||
HOWTO's can also help with this (see <ulink
|
||||
url="http://www.tldp.org/HOWTO/HOWTO-INDEX/other-lang.html"/>. A pre-made
|
||||
<filename>/etc/sysconfig/console</filename> file with known settings for several
|
||||
countries was installed with the LFS-Bootscripts package, so the relevant
|
||||
section can be uncommented if the country is supported. If still in doubt, look
|
||||
in the <filename class="directory">/usr/share/kbd</filename> directory for valid
|
||||
keymaps and screen fonts. Read <filename>loadkeys(1)</filename> and
|
||||
<filename>setfont(8)</filename> to determine the correct arguments for
|
||||
these programs. Once decided, create the configuration file with the following
|
||||
command:</para>
|
||||
HOWTOs can also help with this, see <ulink
|
||||
url="http://www.tldp.org/HOWTO/HOWTO-INDEX/other-lang.html"/>. If still in
|
||||
doubt, look in the <filename class="directory">/usr/share/kbd</filename>
|
||||
directory for valid keymaps and screen fonts. Read
|
||||
<filename>loadkeys(1)</filename> and <filename>setfont(8)</filename> manual
|
||||
pages to determine the correct arguments for these programs.</para>
|
||||
|
||||
<screen><userinput>cat >/etc/sysconfig/console <<"EOF"
|
||||
<literal>KEYMAP="<replaceable>[arguments for loadkeys]</replaceable>"
|
||||
FONT="<replaceable>[arguments for setfont]</replaceable>"</literal>
|
||||
<para>The <filename>/etc/sysconfig/console</filename> file should contain lines
|
||||
of the form: VARIABLE="value". The following variables are recognized:</para>
|
||||
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term>KEYMAP</term>
|
||||
<listitem>
|
||||
<para>This variable specifies the arguments for the
|
||||
<command>loadkeys</command> program, typically, the name of keymap
|
||||
to load, e.g., <quote>es</quote>. If this variable is not set, the
|
||||
bootscript will not run the <command>loadkeys</command> program,
|
||||
and the default kernel keymap will be used.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>KEYMAP_CORRECTIONS</term>
|
||||
<listitem>
|
||||
<para>This (rarely used) variable
|
||||
specifies the arguments for the second call to the
|
||||
<command>loadkeys</command> program. This is useful if the stock keymap
|
||||
is not completely satisfactory and a small adjustment has to be made. E.g.,
|
||||
to include the Euro sign into a keymap that normally doesn't have it,
|
||||
set this variable to <quote>euro2</quote>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>FONT</term>
|
||||
<listitem>
|
||||
<para>This variable specifies the arguments for the
|
||||
<command>setfont</command> program. Typically, this includes the font
|
||||
name, <quote>-m</quote>, and the name of the application character
|
||||
map to load. E.g., in order to load the <quote>lat1-16</quote> font
|
||||
together with the <quote>8859-1</quote> application character map
|
||||
(as it is appropriate in the USA), <!-- because of the copyright sign -->
|
||||
set this variable to <quote>lat1-16 -m 8859-1</quote>.
|
||||
If this variable is not set, the bootscript will not run the
|
||||
<command>setfont</command> program, and the default VGA font will be
|
||||
used together with the default application character map.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>UNICODE</term>
|
||||
<listitem>
|
||||
<para>Set this variable to <quote>1</quote>, <quote>yes</quote> or
|
||||
<quote>true</quote> in order to put the
|
||||
console into UTF-8 mode. This is useful in UTF-8 based locales and
|
||||
harmful otherwise.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>LEGACY_CHARSET</term>
|
||||
<listitem>
|
||||
<para>For many keyboard layouts, there is no stock Unicode keymap in
|
||||
the Kbd package. The <command>console</command> bootscript will
|
||||
convert an available keymap to UTF-8 on the fly if this variable is
|
||||
set to the encoding of the available non-UTF-8 keymap. Note, however,
|
||||
that dead keys (i.e., keys that don't produce a character by
|
||||
themselves, but put an accent onto a character procuced by the next
|
||||
key; there are no dead keys on the standard US keyboard) and composing
|
||||
(i.e., pressing Ctrl+. A E in order to produce the Æ character)
|
||||
will not work in UTF-8 mode without the special kernel patch.
|
||||
This variable is useful only in UTF-8 mode.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>BROKEN_COMPOSE</term>
|
||||
<listitem>
|
||||
<para>Set this to <quote>0</quote> if you are going to apply the kernel patch in
|
||||
Chapter 8. Note that you also have to add the character set expected
|
||||
by composition rules in your keymap to the FONT variable after the
|
||||
<quote>-m</quote> switch. This variable is useful only in UTF-8 mode.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>Support for compiling the keymap directly into the kernel has been
|
||||
removed because there were reports that it leads to incorrect results.</para>
|
||||
|
||||
<para>Some examples:</para>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem>
|
||||
<para>For a non-Unicode setup, only the KEYMAP and FONT variables are
|
||||
generally needed. E.g., for a Polish setup, one would use:</para>
|
||||
|
||||
<screen role="nodump"><userinput>cat > /etc/sysconfig/console << "EOF"
|
||||
<literal># Begin /etc/sysconfig/console
|
||||
|
||||
KEYMAP="pl2"
|
||||
FONT="lat2a-16 -m 8859-2"
|
||||
|
||||
# End /etc/sysconfig/console</literal>
|
||||
EOF</userinput></screen>
|
||||
</listitem>
|
||||
|
||||
<para>For example, for Spanish users who also want to use the Euro
|
||||
character (accessible by pressing AltGr+E), the following settings are
|
||||
correct:</para>
|
||||
<listitem>
|
||||
<para>As mentioned above, it is sometimes necessary to adjust a
|
||||
stock keymap slightly. The following example adds the Euro symbol to the
|
||||
German keymap:</para>
|
||||
|
||||
<screen role="nodump"><userinput>cat >/etc/sysconfig/console <<"EOF"
|
||||
<literal>KEYMAP="es euro2"
|
||||
FONT="lat9-16 -u iso01"</literal>
|
||||
<screen role="nodump"><userinput>cat > /etc/sysconfig/console << "EOF"
|
||||
<literal># Begin /etc/sysconfig/console
|
||||
|
||||
KEYMAP="de-latin1"
|
||||
KEYMAP_CORRECTIONS="euro2"
|
||||
FONT="lat0-16 -m 8859-15"
|
||||
|
||||
# End /etc/sysconfig/console</literal>
|
||||
EOF</userinput></screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>The following is a Unicode-enabled example for Bulgarian, where a stock
|
||||
UTF-8 keymap exists and defines no dead keys or composition rules:</para>
|
||||
|
||||
<screen role="nodump"><userinput>cat > /etc/sysconfig/console << "EOF"
|
||||
<literal># Begin /etc/sysconfig/console
|
||||
|
||||
UNICODE="1"
|
||||
KEYMAP="bg_bds-utf8"
|
||||
FONT="LatArCyrHeb-16"
|
||||
|
||||
# End /etc/sysconfig/console</literal>
|
||||
EOF</userinput></screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>Due to the use of a 512-glyph LatArCyrHeb-16 font in the previous
|
||||
example, bright colors are no longer available on the Linux console unless
|
||||
a framebuffer is used. If one wants to have bright colors without
|
||||
framebuffer and can live without characters not belonging to his language,
|
||||
it is still possible to use a language-specific 256-glyph font, as
|
||||
illustrated below.</para>
|
||||
|
||||
<screen role="nodump"><userinput>cat > /etc/sysconfig/console << "EOF"
|
||||
<literal># Begin /etc/sysconfig/console
|
||||
|
||||
UNICODE="1"
|
||||
KEYMAP="bg_bds-utf8"
|
||||
FONT="cyr-sun16"
|
||||
|
||||
# End /etc/sysconfig/console</literal>
|
||||
EOF</userinput></screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>The following example illustrates keymap autoconversion from
|
||||
ISO-8859-15 to UTF-8 and enabling dead keys in Unicode mode:</para>
|
||||
|
||||
<screen role="nodump"><userinput>cat > /etc/sysconfig/console << "EOF"
|
||||
<literal># Begin /etc/sysconfig/console
|
||||
|
||||
UNICODE="1"
|
||||
KEYMAP="de-latin1"
|
||||
KEYMAP_CORRECTIONS="euro2"
|
||||
LEGACY_CHARSET="iso-8859-15"
|
||||
BROKEN_COMPOSE="0"
|
||||
FONT="LatArCyrHeb-16 -m 8859-15"
|
||||
|
||||
# End /etc/sysconfig/console</literal>
|
||||
EOF</userinput></screen>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>For Chinese, Japanese, Korean and some other languages, the Linux
|
||||
console cannot be configured to display the needed characters. Users
|
||||
who need such languages should install the X Window System, fonts that
|
||||
cover the necessary character ranges, and the proper input method (e.g.,
|
||||
SCIM, it supports a wide variety of languages).</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<!-- Added because folks keep posting their console file with X questions
|
||||
to blfs-support list -->
|
||||
<note>
|
||||
<para>The <envar>FONT</envar> line above is correct only for the ISO 8859-15
|
||||
character set. If using ISO 8859-1 and, therefore, a pound sign
|
||||
instead of Euro, the correct <envar>FONT</envar> line would be:</para>
|
||||
|
||||
<screen role="nodump"><userinput>FONT="lat1-16"</userinput></screen>
|
||||
<para>The <filename>/etc/sysconfig/console</filename> file only controls the
|
||||
Linux text console localization. It has nothing to do with setting the proper
|
||||
keyboard layout and terminal fonts in the X Window System, with ssh sessions
|
||||
or with a serial console.</para>
|
||||
</note>
|
||||
|
||||
<para>If the <envar>KEYMAP</envar> or <envar>FONT</envar> variable is not set,
|
||||
the <command>console</command> initscript will not run the corresponding
|
||||
program.</para>
|
||||
|
||||
<para>In some keymaps, the Backspace and Delete keys send characters different
|
||||
from ones in the default keymap built into the kernel. This confuses some
|
||||
applications. For example, Emacs displays its help (instead of erasing the
|
||||
character before the cursor) when Backspace is pressed. To check if the keymap
|
||||
in use is affected (this works only for i386 keymaps):</para>
|
||||
|
||||
<screen role="nodump"><userinput>zgrep '\W14\W' <replaceable>[/path/to/your/keymap]</replaceable></userinput></screen>
|
||||
|
||||
<para>If the keycode 14 is Backspace instead of Delete, create the
|
||||
following keymap snippet to fix this issue:</para>
|
||||
|
||||
<screen role="nodump"><userinput>mkdir -pv /etc/kbd && cat > /etc/kbd/bs-sends-del <<"EOF"
|
||||
<literal> keycode 14 = Delete Delete Delete Delete
|
||||
alt keycode 14 = Meta_Delete
|
||||
altgr alt keycode 14 = Meta_Delete
|
||||
keycode 111 = Remove
|
||||
altgr control keycode 111 = Boot
|
||||
control alt keycode 111 = Boot
|
||||
altgr control alt keycode 111 = Boot</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>Tell the <command>console</command> script to load this
|
||||
snippet after the main keymap:</para>
|
||||
|
||||
<screen role="nodump"><userinput>cat >>/etc/sysconfig/console <<"EOF"
|
||||
<literal>KEYMAP_CORRECTIONS="/etc/kbd/bs-sends-del"</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<para>To compile the keymap directly into the kernel instead of
|
||||
setting it every time from the <command>console</command> bootscript,
|
||||
follow the instructions given in <xref linkend="ch-bootable-kernel" role="."/>
|
||||
Doing this ensures that the keyboard will always work as expected,
|
||||
even when booting into maintenance mode (by passing
|
||||
<parameter>init=/bin/sh</parameter> to the kernel), because the
|
||||
<command>console</command> bootscript will not be run in that
|
||||
situation. Additionally, the kernel will not set the screen font
|
||||
automatically. This should not pose many problems because ASCII characters
|
||||
will be handled correctly, and it is unlikely that a user would need
|
||||
to rely on non-ASCII characters while in maintenance mode.</para>
|
||||
|
||||
<para>Since the kernel will set up the keymap, it is possible to omit
|
||||
the <envar>KEYMAP</envar> variable from the
|
||||
<filename>/etc/sysconfig/console</filename> configuration file. It can
|
||||
also be left in place, if desired, without consequence. Keeping it
|
||||
could be beneficial if running several different kernels where it is
|
||||
difficult to ensure that the keymap is compiled into every one of
|
||||
them.</para>
|
||||
|
||||
</sect1>
|
||||
|
@ -69,17 +69,20 @@
|
||||
for the desired language (e.g., <quote>en</quote>) and
|
||||
<replaceable>[CC]</replaceable> with the two-letter code for the appropriate
|
||||
country (e.g., <quote>GB</quote>). <replaceable>[charmap]</replaceable> should
|
||||
be replaced with the canonical charmap for your chosen locale.</para>
|
||||
be replaced with the canonical charmap for your chosen locale. Optional
|
||||
modifiers such as <quote>@euro</quote> may also be present.</para>
|
||||
|
||||
<para>The list of all locales supported by Glibc can be obtained by running
|
||||
the following command:</para>
|
||||
|
||||
<screen role="nodump"><userinput>locale -a</userinput></screen>
|
||||
|
||||
<para>Locales can have a number of synonyms, e.g. <quote>ISO-8859-1</quote>
|
||||
<para>Charmaps can have a number of aliases, e.g., <quote>ISO-8859-1</quote>
|
||||
is also referred to as <quote>iso8859-1</quote> and <quote>iso88591</quote>.
|
||||
Some applications cannot handle the various synonyms correctly, so it is
|
||||
safest to choose the canonical name for a particular locale. To determine
|
||||
Some applications cannot handle the various synonyms correctly (e.g., require
|
||||
that <quote>UTF-8</quote> is written as <quote>UTF-8</quote>, not
|
||||
<quote>utf8</quote>), so it is safest in most
|
||||
cases to choose the canonical name for a particular locale. To determine
|
||||
the canonical name, run the following command, where <replaceable>[locale
|
||||
name]</replaceable> is the output given by <command>locale -a</command> for
|
||||
your preferred locale (<quote>en_GB.iso88591</quote> in our example).</para>
|
||||
@ -115,6 +118,7 @@ LC_ALL=[locale name] locale int_prefix</userinput></screen>
|
||||
Further instructions assume that there are no such error messages from
|
||||
Glibc.</para>
|
||||
|
||||
<!-- FIXME: the xlib example will became obsolete real soon -->
|
||||
<para>Some packages beyond LFS may also lack support for your chosen locale. One
|
||||
example is the X library (part of the X Window System), which outputs the
|
||||
following error message:</para>
|
||||
@ -139,23 +143,33 @@ LC_ALL=[locale name] locale int_prefix</userinput></screen>
|
||||
<screen><userinput>cat > /etc/profile << "EOF"
|
||||
<literal># Begin /etc/profile
|
||||
|
||||
export LANG=<replaceable>[ll]</replaceable>_<replaceable>[CC]</replaceable>.<replaceable>[charmap]</replaceable>
|
||||
export LANG=<replaceable>[ll]</replaceable>_<replaceable>[CC]</replaceable>.<replaceable>[charmap]</replaceable><replaceable>[@modifiers]</replaceable>
|
||||
export INPUTRC=/etc/inputrc
|
||||
|
||||
# End /etc/profile</literal>
|
||||
EOF</userinput></screen>
|
||||
|
||||
<note>
|
||||
<para>The <quote>C</quote> (default) and <quote>en_US</quote> (the
|
||||
recommended one for United States English users) locales are different.</para>
|
||||
</note>
|
||||
<para>The <quote>C</quote> (default) and <quote>en_US</quote> (the recommended
|
||||
one for United States English users) locales are different. <quote>C</quote>
|
||||
uses the US-ASCII 7-bit character set, and treats bytes with the high bit set
|
||||
as invalid characters. That's why, e.g., the <command>ls</command> command
|
||||
substitutes them with question marks in that locale. Also, an attempt to send
|
||||
mail with such characters from Mutt or Pine results in non-RFC-conforming
|
||||
messages being sent (the charset in the outgoing mail is indicated as <quote>unknown
|
||||
8-bit</quote>). So you can use the <quote>C</quote> locale only if you are sure that
|
||||
you will never need 8-bit characters.</para>
|
||||
|
||||
<para>Setting the keyboard layout, screen font, and locale-related environment
|
||||
variables are the only internationalization steps needed to support locales
|
||||
that use ordinary single-byte encodings and left-to-right writing direction.
|
||||
More complex cases (including UTF-8 based locales) require additional steps
|
||||
and additional patches because many applications tend to not work properly
|
||||
under such conditions. These steps and patches are not included in the LFS
|
||||
book and such locales are not yet supported by LFS.</para>
|
||||
<para>UTF-8 based locales are not supported well by many programs. E.g., the
|
||||
<command>watch</command> program displays only ASCII characters in UTF-8
|
||||
locales and has no such restriction in traditional 8-bit locales like en_US.
|
||||
Without patches and/or installing software beyond BLFS, in UTF-8 based locales
|
||||
you will not be able to do such basic tasks as printing plain-text files from
|
||||
the command line, recording Windows-readable CDs with filenames containing
|
||||
non-ASCII characters, viewing ID3v1 tags in MP3 files and so on. Work is in
|
||||
progress to document and, if possible, fix such problems, see
|
||||
<ulink url="&blfs-root;view/svn/introduction/locale-issues.html"/>.
|
||||
It is, however, safe to use UTF-8 based locales if you are going to use only
|
||||
KDE or GNOME and never open the terminal.</para>
|
||||
<!-- All abovementioned problems except "watch" have a known fix beyond BLFS -->
|
||||
|
||||
</sect1>
|
||||
|
@ -65,4 +65,43 @@ EOF</userinput></screen>
|
||||
<filename>usbcore</filename> must be listed in
|
||||
<filename>/etc/sysconfig/modules</filename>.</para>
|
||||
|
||||
<para>Filesystems with MS-DOS or Windows origin (i.e.: vfat, ntfs, smbfs, cifs,
|
||||
iso9660, udf) need the <quote>iocharset</quote> mount option in order for
|
||||
non-ASCII characters in file names to be interpreted properly. The value
|
||||
of this option should be the same as the character set of your locale,
|
||||
adjusted in such a way that the kernel understands it. This works if the
|
||||
relevant character set definition (found under File systems ->
|
||||
Native Language Support) has been compiled into the kernel
|
||||
or built as a module. The <quote>codepage</quote> option is also needed for
|
||||
vfat and smbfs filesystems. It
|
||||
should be set to the codepage number used under MS-DOS in your country. E.g.,
|
||||
in order to mount USB flash drives, a ru_RU.KOI8-R user would need the
|
||||
following line in <filename>/etc/fstab</filename>:</para>
|
||||
|
||||
<screen>/dev/sda1 /media/flash vfat noauto,user,quiet,showexec,iocharset=koi8r,codepage=866 0 0</screen>
|
||||
|
||||
<para>The corresponding line for ru_RU.UTF-8 users is:</para>
|
||||
|
||||
<screen>/dev/sda1 /media/flash vfat noauto,user,quiet,showexec,iocharset=utf8,codepage=866 0 0</screen>
|
||||
|
||||
<note><para>In the latter case, the kernel emits the following message:</para>
|
||||
|
||||
<screen><computeroutput>FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!</computeroutput></screen>
|
||||
|
||||
<para>This negative recommendation should be ignored, since all other values
|
||||
of the <quote>iocharset</quote> option result in wrong display of filenames in
|
||||
UTF-8 locales.</para></note>
|
||||
|
||||
<para>It is also possible to specify default codepage and iocharset values for
|
||||
some filesystems during kernel configuration. The relevant parameters
|
||||
are named
|
||||
<quote>Default NLS Option</quote> (CONFIG_NLS_DEFAULT),
|
||||
<quote>Default Remote NLS Option</quote> (CONFIG_SMB_NLS_DEFAULT),
|
||||
<quote>Default codepage for FAT</quote> (CONFIG_FAT_DEFAULT_CODEPAGE), and
|
||||
<quote>Default iocharset for FAT</quote> (CONFIG_FAT_DEFAULT_IOCHARSET).
|
||||
There is no way to specify these settings for the
|
||||
ntfs filesystem at kernel compilation time.</para>
|
||||
<!-- Personally, I find it more foolproof to always specify the iocharset and
|
||||
codepage in /etc/fstab for MS-based filesystems - Alexander E. Patrakov -->
|
||||
|
||||
</sect1>
|
||||
|
@ -48,6 +48,13 @@
|
||||
in the kernel source tree for alternative methods to the way this book
|
||||
configures the kernel.</para>
|
||||
|
||||
<para>By default, the Linux kernel generates wrong sequences of bytes when
|
||||
dead keys are used in UTF-8 keyboard mode. Also, one cannot copy and paste
|
||||
non-ASCII characters when UTF-8 mode is active. Fix these issues with the
|
||||
patch:</para>
|
||||
|
||||
<screen><userinput>patch -Np1 -i ../&linux-utf8-patch;</userinput></screen>
|
||||
|
||||
<para>Prepare for compilation by running the following command:</para>
|
||||
|
||||
<screen><userinput>make mrproper</userinput></screen>
|
||||
@ -57,14 +64,7 @@
|
||||
kernel compilation. Do not rely on the source tree being clean after
|
||||
un-tarring.</para>
|
||||
|
||||
<para>If, in <xref linkend="ch-scripts-console" role=","/> it was decided to
|
||||
compile the keymap into the kernel, issue the command below:</para>
|
||||
|
||||
<screen role="nodump"><userinput>loadkeys -m /usr/share/kbd/keymaps/<replaceable>[path to keymap]</replaceable> > \
|
||||
drivers/char/defkeymap.c</userinput></screen>
|
||||
|
||||
<para>For example, if using a Dutch keyboard, use
|
||||
<filename>/usr/share/kbd/keymaps/i386/qwerty/nl.map.gz</filename>.</para>
|
||||
<!-- Support for compiling a keymap into the kernel is deliberately removed -->
|
||||
|
||||
<para>Configure the kernel via a menu-driven interface. BLFS has some
|
||||
information regarding particular kernel configuration requirements of
|
||||
|
14
general.ent
14
general.ent
@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<!ENTITY version "SVN-20060103">
|
||||
<!ENTITY releasedate "January 3, 2006">
|
||||
<!ENTITY version "SVN-20060105">
|
||||
<!ENTITY releasedate "January 5, 2006">
|
||||
<!ENTITY milestone "6.2">
|
||||
<!ENTITY generic-version "development"> <!-- Use "development", "testing", or "x.y[-pre{x}]" -->
|
||||
|
||||
@ -22,6 +22,7 @@
|
||||
<!ENTITY alpha-gnu "ftp://alpha.gnu.org/gnu/">
|
||||
<!ENTITY kernel "http://www.kernel.org/pub/">
|
||||
<!ENTITY sourceforge "http://prdownloads.sourceforge.net/">
|
||||
<!ENTITY alexpatches "&lfs-root;~alexander/patches/">
|
||||
|
||||
<!ENTITY % patches-entities SYSTEM "patches.ent">
|
||||
%patches-entities;
|
||||
@ -34,6 +35,7 @@
|
||||
<!ENTITY bison-version "2.1">
|
||||
<!ENTITY bzip2-version "1.0.3">
|
||||
<!ENTITY coreutils-version "5.93">
|
||||
<!ENTITY db-version "4.4.16">
|
||||
<!ENTITY dejagnu-version "1.4.4">
|
||||
<!ENTITY diffutils-version "2.8.1">
|
||||
<!ENTITY e2fsprogs-version "1.38">
|
||||
@ -47,7 +49,8 @@
|
||||
<!ENTITY gettext-version "0.14.5">
|
||||
<!ENTITY glibc-version "2.3.6">
|
||||
<!ENTITY grep-version "2.5.1a">
|
||||
<!ENTITY groff-version "1.19.2">
|
||||
<!ENTITY groff-version "1.18.1.1">
|
||||
<!ENTITY groff-patchlevel "10">
|
||||
<!ENTITY grub-version "0.97">
|
||||
<!ENTITY gzip-version "1.3.5">
|
||||
<!ENTITY hotplug-version "2004_09_23">
|
||||
@ -56,18 +59,19 @@
|
||||
<!ENTITY iproute2-version "051007">
|
||||
<!ENTITY kbd-version "1.12">
|
||||
<!ENTITY less-version "394">
|
||||
<!ENTITY lfs-bootscripts-version "3.2.1">
|
||||
<!ENTITY lfs-bootscripts-version "20051223">
|
||||
<!ENTITY libtool-version "1.5.22">
|
||||
<!ENTITY linux-version "2.6.12.5">
|
||||
<!ENTITY linux-dl-version "2.6">
|
||||
<!ENTITY linux-libc-headers-version "2.6.12.0">
|
||||
<!ENTITY m4-version "1.4.4">
|
||||
<!ENTITY make-version "3.80">
|
||||
<!ENTITY man-version "1.6b">
|
||||
<!ENTITY man-db-version "2.4.3">
|
||||
<!ENTITY man-pages-version "2.18">
|
||||
<!ENTITY mktemp-version "1.5">
|
||||
<!ENTITY module-init-tools-version "3.2.2">
|
||||
<!ENTITY ncurses-version "5.5">
|
||||
<!-- <!ENTITY ncurses-date "20050319"> -->
|
||||
<!ENTITY patch-version "2.5.4">
|
||||
<!ENTITY perl-version "5.8.7">
|
||||
<!ENTITY procps-version "3.2.6">
|
||||
|
22
patches.ent
22
patches.ent
@ -1,12 +1,15 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
|
||||
<!-- Start of Common Patches -->
|
||||
<!ENTITY bzip2-docs-patch "bzip2-&bzip2-version;-install_docs-1.patch">
|
||||
<!ENTITY bzip2-bzgrep-patch "bzip2-&bzip2-version;-bzgrep_security-1.patch">
|
||||
<!ENTITY bzip2-docs-patch "bzip2-&bzip2-version;-install_docs-1.patch">
|
||||
|
||||
<!ENTITY coreutils-i18n-patch "coreutils-&coreutils-version;-i18n-1.patch">
|
||||
<!ENTITY coreutils-suppress-patch "coreutils-&coreutils-version;-suppress_uptime_kill_su-1.patch">
|
||||
<!ENTITY coreutils-uname-patch "coreutils-&coreutils-version;-uname-1.patch">
|
||||
|
||||
<!ENTITY diffutils-i18n-patch "diffutils-&diffutils-version;-i18n-1.patch">
|
||||
|
||||
<!ENTITY expect-spawn-patch "expect-&expect-version;-spawn-1.patch">
|
||||
|
||||
<!ENTITY flex-fixes-patch "flex-&flex-version;-debian_fixes-3.patch">
|
||||
@ -15,24 +18,37 @@
|
||||
|
||||
<!ENTITY gcc-specs-patch "gcc-&gcc-version;-specs-1.patch">
|
||||
|
||||
<!ENTITY grep-fixes-patch "grep-&grep-version;-redhat_fixes-2.patch">
|
||||
|
||||
<!ENTITY groff-debian-patch "groff_&groff-version;-&groff-patchlevel;.diff.gz">
|
||||
|
||||
<!ENTITY gzip-security_fix-patch "gzip-&gzip-version;-security_fixes-1.patch">
|
||||
|
||||
<!ENTITY kbd-backspace-patch "kbd-&kbd-version;-backspace-1.patch">
|
||||
<!ENTITY kbd-gcc4_fixes-patch "kbd-&kbd-version;-gcc4_fixes-1.patch">
|
||||
|
||||
<!ENTITY inetutils-gcc4_fixes-patch "inetutils-&inetutils-version;-gcc4_fixes-3.patch">
|
||||
<!ENTITY inetutils-man_pages-patch "inetutils-&inetutils-version;-no_server_man_pages-1.patch">
|
||||
|
||||
<!ENTITY linux-utf8-patch "linux-&linux-version;-utf8_input-2.patch">
|
||||
|
||||
<!ENTITY mktemp-tempfile-patch "mktemp-&mktemp-version;-add_tempfile-3.patch">
|
||||
|
||||
<!ENTITY ncurses-fixes-patch "ncurses-&ncurses-version;-fixes-1.patch">
|
||||
<!-- <!ENTITY ncurses-rollup-patch "ncurses-&ncurses-version;-&ncurses-date;-patch.sh.bz2"> -->
|
||||
|
||||
<!ENTITY perl-libc-patch "perl-&perl-version;-libc-1.patch">
|
||||
|
||||
<!ENTITY sysklogd-8bit-patch "sysklogd-&sysklogd-version;-8bit-1.patch">
|
||||
|
||||
<!ENTITY shadow-configure-patch "shadow-&shadow-version;-configure_fix-1.patch">
|
||||
|
||||
<!ENTITY sysklogd-fixes-patch "sysklogd-&sysklogd-version;-fixes-1.patch">
|
||||
|
||||
<!ENTITY tar-sparse_fix-patch "tar-&tar-version;-sparse_fix-1.patch">
|
||||
<!ENTITY tar-gcc4_fix-patch "tar-&tar-version;-gcc4_fix_tests-1.patch">
|
||||
<!ENTITY tar-sparse_fix-patch "tar-&tar-version;-sparse_fix-1.patch">
|
||||
|
||||
<!ENTITY texinfo-tempfile_fix-patch "texinfo-&texinfo-version;-tempfile_fix-2.patch">
|
||||
<!ENTITY texinfo-multibyte-patch "texinfo-&texinfo-version;-multibyte-2.patch">
|
||||
<!ENTITY texinfo-tempfile_fix-patch "texinfo-&texinfo-version;-tempfile_fix-1.patch">
|
||||
|
||||
<!ENTITY util-linux-cramfs-patch "util-linux-&util-linux-version;-cramfs-1.patch">
|
||||
|
Loading…
Reference in New Issue
Block a user