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

clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 8545c9aa was 57b3f19, checked in by Jonathan Norman <jon@…>, 13 years ago

Added a patch to Eglibc final to fix a segfault issue with ALSA

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