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

sysvinit
Last change on this file since 6748458 was e52599b, 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.2 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 </sect2>
128
129 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
130 href="../common/glibc.xml"
131 xpointer="xpointer(id('i18n-glibc'))"/>
132
133 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
134 href="../common/glibc.xml"
135 xpointer="xpointer(id('conf-glibc'))"/>
136
137 <sect2 id="conf-ld" role="configuration">
138 <title>Configuring The Dynamic Loader</title>
139
140 <indexterm zone="conf-ld">
141 <primary sortas="e-/etc/ld.so.conf">/etc/ld.so.conf</primary>
142 </indexterm>
143
144 <para os="ld-a">By default, the dynamic loader (<filename
145 class="libraryfile">/lib/ld-linux.so.2</filename> for 32bit executables and
146 <filename class="libraryfile">/lib64/ld-linux.so.2</filename> for
147 64bit executables) searches through
148 <filename class="directory">/lib</filename>,
149 <filename class="directory">/lib64</filename>,
150 <filename class="directory">/usr/lib</filename>,
151 and <filename class="directory">/usr/lib64</filename> for dynamic
152 libraries that are needed by programs as they are run. However, if
153 there are libraries in directories other than these, they need to be
154 added to the <filename>/etc/ld.so.conf</filename> file in order
155 for the dynamic loader to find them. Some directories that are commonly
156 known to contain additional libraries are
157 <filename class="directory">/usr/local/lib</filename>,
158 <filename class="directory">/usr/local/lib64</filename>,
159 <filename class="directory">/opt/lib</filename>,
160 and <filename class="directory">/opt/lib64</filename>,
161 so add those directories to the dynamic loader's search path.</para>
162
163 <para os="ld-b">Create a new file <filename>/etc/ld.so.conf</filename> by running the
164 following:</para>
165
166<screen os="ld-c"><userinput>cat &gt; /etc/ld.so.conf &lt;&lt; "EOF"
167<literal># Begin /etc/ld.so.conf
168
169/usr/local/lib
170/usr/local/lib64
171/opt/lib
172/opt/lib64
173
174# End /etc/ld.so.conf</literal>
175EOF</userinput></screen>
176
177 </sect2>
178
179 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
180 href="../common/glibc.xml"
181 xpointer="xpointer(id('contents-glibc'))"/>
182
183</sect1>
Note: See TracBrowser for help on using the repository browser.