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

clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 0a7edfb was 00a58649, checked in by William Harrington <kb0iic@…>, 11 years ago

Add a sed for eglibc to detect Make-4.x

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