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

clfs-1.2 clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 34be04a6 was c8d4414, checked in by Joe Ciccone <jciccone@…>, 14 years ago

Add a patch to EGlibc to fix a compatibility issue with Make 3.82.

  • 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='mp1'])"/>
27
28 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
29 href="../common/eglibc.xml"
30 xpointer="xpointer(//*[@os='mp2'])"/>
31
32 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
33 href="../common/eglibc.xml"
34 xpointer="xpointer(//*[@os='l3'])"/>
35
36<screen os="l4"><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.