- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
BOOK/final-system/common/eglibc.xml
re57ce38 r7d97f36 58 58 unset LINKER</userinput></screen> 59 59 60 <para os="p1">The following patch fixes an issue where EGLIBC will 61 improperly handle a condition where an elf binary has missing 62 dependencies:</para> 63 64 <screen os="p2"><userinput>patch -Np1 -i ../&eglibc-dl_dep_fix-patch;</userinput></screen> 65 60 66 <para os="b">The EGLIBC build system is self-contained and will install 61 67 perfectly, even though the compiler specs file and linker are still … … 65 71 of achieving a clean build.</para> 66 72 67 <para os="s1">Allow EGLIBC to detect Make-4.x:</para> 68 69 <screen os="s2"><userinput>sed -r -i 's/(3..89..)/\1 | 4.*/' configure</userinput></screen> 70 71 <para os="e">The EGLIBC documentation recommends building EGLIBC outside of the source directory in a dedicated build directory:</para> 73 <para os="e">The EGLIBC documentation recommends building EGLIBC outside of the 74 source directory in a dedicated build directory:</para> 72 75 73 76 <screen os="f"><userinput>mkdir -v ../eglibc-build … … 77 80 78 81 <screen os="h"><userinput>../eglibc-&eglibc-version;/configure --prefix=/usr \ 79 --disable-profile --enable- kernel=2.6.32 --libexecdir=/usr/lib/eglibc\80 -- enable-obsolete-rpc</userinput></screen>82 --disable-profile --enable-add-ons --enable-kernel=2.6.0 \ 83 --libexecdir=/usr/lib/eglibc</userinput></screen> 81 84 82 85 <variablelist os="i"> … … 86 89 <term><parameter>--libexecdir=/usr/lib/eglibc</parameter></term> 87 90 <listitem> 88 <para>This changes the location of the <command> getconf</command>89 utilityfrom its default of <filename91 <para>This changes the location of the <command>pt_chown</command> 92 program from its default of <filename 90 93 class="directory">/usr/libexec</filename> to <filename 91 94 class="directory">/usr/lib/eglibc</filename>.</para> … … 108 111 <!-- items n,o,p no longer the master, use x86_64 which has no failures --> 109 112 110 <screen os="n"><userinput remap="test">cp -v ../eglibc-&eglibc-version;/iconvdata/gconv-modules iconvdata113 <screen os="n"><userinput>cp -v ../eglibc-&eglibc-version;/iconvdata/gconv-modules iconvdata 111 114 make -k check 2>&1 | tee eglibc-check-log; grep Error eglibc-check-log</userinput></screen> 112 115 … … 147 150 <screen os="r"><userinput>touch /etc/ld.so.conf</userinput></screen> 148 151 149 <para os="s">Install the package, and remove unneeded files from 150 <filename class="directory">/usr/include/rpcsvc</filename>:</para> 151 152 <screen os="t"><userinput>make install && 153 rm -v /usr/include/rpcsvc/*.x</userinput></screen> 152 <para os="s">Install the package:</para> 153 154 <screen os="t"><userinput>make install</userinput></screen> 154 155 155 156 </sect2> … … 245 246 EOF</userinput></screen> 246 247 247 <para>Install timezone data:</para>248 <screen><userinput>tar -xf ../tzdata&tzdata-version;.tar.gz249 250 ZONEINFO=/usr/share/zoneinfo251 mkdir -pv $ZONEINFO/{posix,right}252 253 for tz in etcetera southamerica northamerica europe africa antarctica \254 asia australasia backward pacificnew \255 systemv; do256 zic -L /dev/null -d $ZONEINFO -y "sh yearistype.sh" ${tz}257 zic -L /dev/null -d $ZONEINFO/posix -y "sh yearistype.sh" ${tz}258 zic -L leapseconds -d $ZONEINFO/right -y "sh yearistype.sh" ${tz}259 done260 261 cp -v zone.tab iso3166.tab $ZONEINFO262 zic -d $ZONEINFO -p America/New_York263 unset ZONEINFO</userinput></screen>264 265 <variablelist>266 <title>The meaning of the zic commands:</title>267 268 <varlistentry>269 <term><parameter>zic -L /dev/null ...</parameter></term>270 <listitem>271 <para>This creates posix timezones, without any leap seconds. It is272 conventional to put these in both273 <filename class="directory">zoneinfo</filename> and274 <filename class="directory">zoneinfo/posix</filename>. It is275 necessary to put the POSIX timezones in276 <filename class="directory">zoneinfo</filename>, otherwise various277 test-suites will report errors. On an embedded system, where space is278 tight and you do not intend to ever update the timezones, you could save279 1.9MB by not using the <filename class="directory">posix</filename>280 directory, but some applications or test-suites might give less good281 results</para>282 </listitem>283 </varlistentry>284 <varlistentry>285 <term><parameter>zic -L leapseconds ...</parameter></term>286 <listitem>287 <para>This creates right timezones, including leap seconds. On an288 embedded system, where space is tight and you do not intend to289 ever update the timezones, or care about the correct time, you could290 save 1.9MB by omitting the <filename class="directory">right</filename>291 directory.</para>292 </listitem>293 </varlistentry>294 <varlistentry>295 <term><parameter>zic ... -p ...</parameter></term>296 <listitem>297 <para>This creates the <filename>posixrules</filename> file. We use298 New York because POSIX requires the daylight savings time rules299 to be in accordance with US rules.</para>300 </listitem>301 </varlistentry>302 </variablelist>303 304 248 <para>To determine the local time zone, run the following script:</para> 305 249 … … 379 323 <seglistitem> 380 324 <seg>catchsegv, gencat, getconf, getent, iconv, iconvconfig, ldconfig, 381 ldd, lddlibc4, locale, localedef, m akedb, mtrace, nscd,382 pcprofiledump, p ldd, rpcgen, sln, sprof, tzselect, xtrace,zdump,383 and zic</seg>325 ldd, lddlibc4, locale, localedef, mtrace, nscd, 326 pcprofiledump, pt_chown, rpcgen, rpcinfo, sln, sprof, tzselect, xtrace, 327 zdump, and zic</seg> 384 328 <seg>ld.so, libBrokenLocale.[a,so], libSegFault.so, libanl.[a,so], 385 329 libbsd-compat.a, libc.[a,so], libc_nonshared.a, libcidn.[a,so], … … 521 465 </varlistentry> 522 466 523 <varlistentry id="makedb">524 <term><command>makedb</command></term>525 <listitem>526 <para>Creates a simple database from textual input</para>527 <indexterm zone="ch-system-eglibc makedb">528 <primary sortas="b-makedb">makedb</primary>529 </indexterm>530 </listitem>531 </varlistentry>532 533 467 <varlistentry id="mtrace"> 534 468 <term><command>mtrace</command></term> … … 563 497 </varlistentry> 564 498 565 <varlistentry id="pldd"> 566 <term><command>pldd</command></term> 567 <listitem> 568 <para>Lists dynamic shared objects used by running processes</para> 569 <indexterm zone="ch-system-eglibc pldd"> 570 <primary sortas="b-pldd">pldd</primary> 499 <varlistentry id="pt_chown"> 500 <term><command>pt_chown</command></term> 501 <listitem> 502 <para>A helper program for <command>grantpt</command> to set the owner, 503 group and access permissions of a slave pseudo terminal</para> 504 <indexterm zone="ch-system-eglibc pt_chown"> 505 <primary sortas="b-pt_chown">pt_chown</primary> 571 506 </indexterm> 572 507 </listitem> … … 584 519 </varlistentry> 585 520 521 <varlistentry id="rpcinfo"> 522 <term><command>rpcinfo</command></term> 523 <listitem> 524 <para>Makes an RPC call to an RPC server</para> 525 <indexterm zone="ch-system-eglibc rpcinfo"> 526 <primary sortas="b-rpcinfo">rpcinfo</primary> 527 </indexterm> 528 </listitem> 529 </varlistentry> 530 586 531 <varlistentry id="sln"> 587 532 <term><command>sln</command></term> … … 590 535 <indexterm zone="ch-system-eglibc sln"> 591 536 <primary sortas="b-sln">sln</primary> 592 </indexterm>593 </listitem>594 </varlistentry>595 596 <varlistentry id="sotruss">597 <term><command>sotruss</command></term>598 <listitem>599 <para>Traces shared library procedure calls of a specified command</para>600 <indexterm zone="ch-system-eglibc sotruss">601 <primary sortas="b-sotruss">sotruss</primary>602 537 </indexterm> 603 538 </listitem>
Note:
See TracChangeset
for help on using the changeset viewer.