source: BOOK/final-system/multilib/eglibc-64bit.xml @ d8f87e8

clfs-1.2clfs-2.1clfs-3.0.0-systemdclfs-3.0.0-sysvinitsystemdsysvinit
Last change on this file since d8f87e8 was d8f87e8, checked in by Jim Gifford <clfs@…>, 15 years ago

This commit will address most of the EGLIBC test suite failures

  • Property mode set to 100644
File size: 5.9 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-system-eglibc" role="wrap">
9  <?dbhtml filename="eglibc-64bit.html"?>
10
11  <title>Glibc-&eglibc-version; 64-Bit</title>
12
13  <indexterm zone="ch-system-eglibc">
14    <primary sortas="a-EGLIBC">EGLIBC</primary>
15  </indexterm>
16
17  <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
18  href="eglibc.xml"
19  xpointer="xpointer(//*[@role='package'])"/>
20
21  <sect2 role="installation">
22    <title>Installation of EGLIBC</title>
23
24    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
25    href="../common/eglibc.xml"
26    xpointer="xpointer(//*[@os='p1'])"/>
27
28    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
29    href="../common/eglibc.xml"
30    xpointer="xpointer(//*[@os='p2'])"/>
31
32    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
33    href="../common/eglibc.xml"
34    xpointer="xpointer(//*[@os='l1'])"/>
35
36<screen os="l2"><userinput>LINKER=$(readelf -l $(file /tools/lib64/libc-* | cut -f1 -d:) | sed -n 's@.*interpret.*/tools\(.*\)]$@\1@p')
37sed -i "s|libs -o|libs -L/usr/lib64 -Wl,-dynamic-linker=${LINKER} -o|" \
38  scripts/test-installation.pl
39unset LINKER</userinput></screen>
40
41    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
42    href="eglibc.xml"
43    xpointer="xpointer(//*[@os='b'])"/>
44
45    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
46    href="eglibc.xml"
47    xpointer="xpointer(//*[@os='e'])"/>
48
49    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
50    href="eglibc.xml"
51    xpointer="xpointer(//*[@os='f'])"/>
52
53    <para os="m1">Tell EGLIBC to install its 64-bit libraries into
54    <filename class="directory">/lib64</filename>:</para>
55
56<screen os="m2"><userinput>echo "slibdir=/lib64" &gt;&gt; configparms</userinput></screen>
57
58    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
59    href="eglibc.xml"
60    xpointer="xpointer(//*[@os='g'])"/>
61
62<screen os="h"><userinput>CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
63    ../eglibc-&eglibc-version;/configure --prefix=/usr \
64    --disable-profile --enable-add-ons --enable-kernel=2.6.0 \
65    --libexecdir=/usr/lib64/glibc --libdir=/usr/lib64</userinput></screen>
66
67    <variablelist os="i">
68      <title>The meaning of the new configure option:</title>
69
70      <varlistentry>
71        <term><parameter>--libexecdir=/usr/lib64/glibc</parameter></term>
72        <listitem>
73          <para>This changes the location of the <command>pt_chown</command>
74          program from its default of <filename
75          class="directory">/usr/libexec</filename> to <filename
76          class="directory">/usr/lib64/glibc</filename>.</para>
77        </listitem>
78      </varlistentry>
79    </variablelist>
80
81    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
82    href="eglibc.xml"
83    xpointer="xpointer(//*[@os='j'])"/>
84
85    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
86    href="eglibc.xml"
87    xpointer="xpointer(//*[@os='k'])"/>
88
89    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
90    href="eglibc.xml"
91    xpointer="xpointer(//*[@os='l'])"/>
92
93    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
94    href="eglibc.xml"
95    xpointer="xpointer(//*[@os='m'])"/>
96
97    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
98    href="eglibc.xml"
99    xpointer="xpointer(//*[@os='n'])"/>
100
101    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
102    href="eglibc.xml"
103    xpointer="xpointer(//*[@os='o'])"/>
104
105    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
106    href="../common/eglibc.xml"
107    xpointer="xpointer(//*[@os='p'])"/>
108
109    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
110    href="eglibc.xml"
111    xpointer="xpointer(//*[@os='s'])"/>
112
113    <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
114    href="eglibc.xml"
115    xpointer="xpointer(//*[@os='t'])"/>
116
117  </sect2>
118
119  <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
120  href="../common/eglibc.xml"
121  xpointer="xpointer(id('i18n-eglibc'))"/>
122
123  <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
124  href="../common/eglibc.xml"
125  xpointer="xpointer(id('conf-eglibc'))"/>
126
127  <sect2 id="conf-ld" role="configuration">
128    <title>Configuring The Dynamic Loader</title>
129
130    <indexterm zone="conf-ld">
131      <primary sortas="e-/etc/ld.so.conf">/etc/ld.so.conf</primary>
132    </indexterm>
133
134    <para os="ld-a">By default, the dynamic loader (<filename
135    class="libraryfile">/lib/ld-linux.so.2</filename> for 32bit executables and
136    <filename class="libraryfile">/lib64/ld-linux.so.2</filename> for
137    64bit executables) searches through
138    <filename class="directory">/lib</filename>,
139    <filename class="directory">/lib64</filename>,
140    <filename class="directory">/usr/lib</filename>,
141    and <filename class="directory">/usr/lib64</filename> for dynamic
142    libraries that are needed by programs as they are run. However, if
143    there are libraries in directories other than these, they need to be
144    added to the <filename>/etc/ld.so.conf</filename> file in order
145    for the dynamic loader to find them. Some directories that are commonly
146    known to contain additional libraries are
147    <filename class="directory">/usr/local/lib</filename>,
148    <filename class="directory">/usr/local/lib64</filename>,
149    <filename class="directory">/opt/lib</filename>,
150    and <filename class="directory">/opt/lib64</filename>,
151    so add those directories to the dynamic loader's search path.</para>
152
153    <para os="ld-b">Create a new file <filename>/etc/ld.so.conf</filename> by running the
154    following:</para>
155
156<screen os="ld-c"><userinput>cat &gt; /etc/ld.so.conf &lt;&lt; "EOF"
157<literal># Begin /etc/ld.so.conf
158
159/usr/local/lib
160/usr/local/lib64
161/opt/lib
162/opt/lib64
163
164# End /etc/ld.so.conf</literal>
165EOF</userinput></screen>
166
167  </sect2>
168
169  <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
170  href="../common/eglibc.xml"
171  xpointer="xpointer(id('contents-eglibc'))"/>
172
173</sect1>
Note: See TracBrowser for help on using the repository browser.