source: BOOK/temp-system/common/coreutils.xml@ 6e2c4a4

clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 6e2c4a4 was 73bd39d, checked in by Chris Staub <chris@…>, 12 years ago

More command explanation updates

  • Property mode set to 100644
File size: 3.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-temp-system-coreutils" role="wrap">
9 <?dbhtml filename="coreutils.html"?>
10
11 <title>Coreutils-&coreutils-version;</title>
12
13 <indexterm zone="ch-temp-system-coreutils">
14 <primary sortas="a-Coreutils">Coreutils</primary>
15 <secondary>temporary system</secondary>
16 </indexterm>
17
18 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
19 href="../../final-system/common/coreutils.xml"
20 xpointer="xpointer(//*[@role='package'])"/>
21
22 <sect2 role="installation">
23 <title>Installation of Coreutils</title>
24
25 <para os="aa">The following command updates the timestamps on the uname
26 and hostname man pages so that the Makefile does not attempt to regenerate
27 them:</para>
28
29<screen os="ab"><userinput>touch man/uname.1 man/hostname.1</userinput></screen>
30
31 <para os="ba">Configure can not properly determine how to get free space
32 when cross-compiling - as a result, the <command>df</command> program will
33 not be built. Add the following entries to <filename>config.cache</filename>
34 to correct this, and fix various cross-compiling issues:</para>
35
36<screen os="bb"><userinput>cat &gt; config.cache &lt;&lt; EOF
37fu_cv_sys_stat_statfs2_bsize=yes
38gl_cv_func_working_mkstemp=yes
39EOF</userinput></screen>
40
41 <para os="bd">Prepare Coreutils for compilation:</para>
42
43<screen os="be"><userinput>./configure --prefix=/tools \
44 --build=${CLFS_HOST} --host=${CLFS_TARGET} \
45 --enable-install-program=hostname --cache-file=config.cache</userinput></screen>
46
47 <variablelist os="be1">
48 <title>The meaning of the new configure option:</title>
49
50 <varlistentry>
51 <term><parameter>--enable-install-program=hostname</parameter></term>
52 <listitem>
53 <para>Tells Coreutils to install <command>hostname</command>,
54 which is needed for the Perl testsuite.</para>
55 </listitem>
56 </varlistentry>
57
58 </variablelist>
59
60<!--- Hack for coreutils to build for target executables which can't be ran with the host. -->
61 <para os="h1">Coreutils does not build make-prime-list properly and the build host may not be able to execute the target binary. Build it using the host compiler so it can be ran for the generation of data required for the build.</para>
62
63<screen os="h2"><userinput>cp -v Makefile{,.orig}
64sed '/src_make_prime_list/d' Makefile.orig > Makefile
65depbase=`echo src/make-prime-list.o | sed 's|[^/]*$|.deps/&amp;|;s|\.o$||'`;\
66 gcc -std=gnu99 -I. -I./lib -Ilib -I./lib -Isrc -I./src \
67 -fdiagnostics-show-option -funit-at-a-time -g -O2 -MT \
68 src/make-prime-list.o -MD -MP -MF $depbase.Tpo -c -o src/make-prime-list.o \
69 src/make-prime-list.c &amp;&amp;
70mv -f $depbase.Tpo $depbase.Po
71gcc -std=gnu99 -fdiagnostics-show-option -funit-at-a-time -g -O2 \
72 -Wl,--as-needed -o src/make-prime-list src/make-prime-list.o</userinput></screen>
73
74 <para os="h3">Remove the building of the hostname man page as it is affected by the previous commands.</para>
75
76<screen os="h4"><userinput>cp -v Makefile{,.bak}
77sed -e '/hostname.1/d' Makefile.bak > Makefile</userinput></screen>
78<!-- End hack -->
79
80 <para os="bf">Compile the package:</para>
81
82<screen os="bg"><userinput>make</userinput></screen>
83
84 <para os="bh">Install the package:</para>
85
86<screen os="bi"><userinput>make install</userinput></screen>
87
88 </sect2>
89
90 <sect2 role="content">
91 <title/>
92
93 <para>Details on this package are located in <xref
94 linkend="contents-coreutils" role="."/></para>
95
96 </sect2>
97
98</sect1>
Note: See TracBrowser for help on using the repository browser.