source: BOOK/final-system/multilib/glibc-64bit.xml@ c832708

systemd
Last change on this file since c832708 was 005d85d, checked in by William Harrington <kb0iic@…>, 10 years ago

We don't tell what glibc should do. We configure glibc to do what we want it to do.

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