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

sysvinit
Last change on this file since 714950f was f3ec8c71, checked in by William Harrington <kb0iic@…>, 8 years ago

Use --enable-stack-protector=strong during GLIBC final system.

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