source: chapter06/zlib.xml@ 240a944

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 6.3 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/mips64el xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 240a944 was fb39896, checked in by Archaic <archaic@…>, 19 years ago

Wording changes. Pulled out previous changelog commit.

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@6417 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 3.4 KB
RevLine 
[673b0d8]1<?xml version="1.0" encoding="ISO-8859-1"?>
[1770019]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
[673b0d8]3 <!ENTITY % general-entities SYSTEM "../general.ent">
[3e36a78]4 <!ENTITY % patches-entities SYSTEM "../patches.ent">
[673b0d8]5 %general-entities;
[3e36a78]6 %patches-entities;
[673b0d8]7]>
[81fd230]8<sect1 id="ch-system-zlib" role="wrap">
[673b0d8]9<title>Zlib-&zlib-version;</title>
10<?dbhtml filename="zlib.html"?>
[24380c7]11
[673b0d8]12<indexterm zone="ch-system-zlib"><primary sortas="a-Zlib">Zlib</primary></indexterm>
13
[a001133]14<sect2 role="package"><title/>
[e5846ef]15<para>The Zlib package contains compression and decompression routines used by
[81fd230]16some programs.</para>
[5888299]17
[a001133]18<segmentedlist>
19<segtitle>&buildtime;</segtitle>
20<segtitle>&diskspace;</segtitle>
[eb6d9eb]21<seglistitem><seg>0.1 SBU</seg><seg>2.7 MB</seg></seglistitem>
[a001133]22</segmentedlist>
[673b0d8]23
[81fd230]24<segmentedlist>
[45992ae]25<segtitle>&dependencies;</segtitle>
[81fd230]26<seglistitem><seg>Binutils, Coreutils, GCC, Glibc, Make, and Sed</seg></seglistitem>
27</segmentedlist>
[a001133]28</sect2>
[24380c7]29
[a001133]30<sect2 role="installation">
[73aedd1d]31<title>Installation of Zlib</title>
32
[fb39896]33<para>Zlib has a buffer overflow vulnerability that can lead to a Denial of
34Service attack. The following patch fixes the problem:</para>
[cf62a33e]35
36<screen><userinput>patch -Np1 -i ../&zlib-security_fix-patch;</userinput></screen>
37
[81fd230]38<note><para>Zlib is known to build its shared library incorrectly if
39<envar>CFLAGS</envar> is specified in the environment. If using a
40specified <envar>CFLAGS</envar>
41variable, be sure to add the <parameter>-fPIC</parameter> directive to
42the <envar>CFLAGS</envar> variable for the duration of the
43configure command below, then remove it afterwards.</para></note>
44
[4248b0e]45<para>Prepare Zlib for compilation:</para>
46
[5091251]47<screen><userinput>./configure --prefix=/usr --shared --libdir=/lib</userinput></screen>
[4248b0e]48
[73aedd1d]49<para>Compile the package:</para>
50
51<screen><userinput>make</userinput></screen>
52
[673b0d8]53<para>To test the results, issue:
[8a5f906]54<userinput>make check</userinput>.</para>
[dfddb12]55
56<para>Install the shared library:</para>
[73aedd1d]57
58<screen><userinput>make install</userinput></screen>
59
[bc2136e]60<para>The previous command installed a <filename
61class="extension">.so</filename> file in <filename
62class="directory">/lib</filename>. We will remove it and relink it into
63<filename class="directory">/usr/lib</filename>:</para>
[7111666]64
65<screen><userinput>rm /lib/libz.so
66ln -sf ../../lib/libz.so.&zlib-version; /usr/lib/libz.so</userinput></screen>
67
[81fd230]68<para>Build the static library:</para>
[8ad7980]69
[73aedd1d]70<screen><userinput>make clean
71./configure --prefix=/usr
72make</userinput></screen>
73
[81fd230]74<para>To test the results again, issue:
[8a5f906]75<userinput>make check</userinput>.</para>
[73aedd1d]76
[84e4cae]77<para>Install the static library:</para>
[73aedd1d]78
79<screen><userinput>make install</userinput></screen>
80
[81fd230]81<para>Fix the permissions on the static library:</para>
[84e4cae]82
83<screen><userinput>chmod 644 /usr/lib/libz.a</userinput></screen>
84
[73aedd1d]85</sect2>
[24380c7]86
[5888299]87
[c6cb3aa]88<sect2 id="contents-zlib" role="content"><title>Contents of Zlib</title>
[673b0d8]89
[81fd230]90<segmentedlist>
91<segtitle>Installed libraries</segtitle>
[bc2136e]92<seglistitem><seg>libz.[a,so]</seg></seglistitem>
[81fd230]93</segmentedlist>
94
95<variablelist><bridgehead renderas="sect3">Short Descriptions</bridgehead>
96<?dbfo list-presentation="list"?>
[8f97096]97<?dbhtml list-presentation="table"?>
[81fd230]98
99<varlistentry id="libz">
100<term><filename class="libraryfile">libz</filename></term>
101<listitem>
[e2c3fb9]102<para>Contains compression and decompression
[81fd230]103functions used by some programs</para>
104<indexterm zone="ch-system-zlib libz"><primary sortas="c-libz">libz</primary></indexterm>
105</listitem>
106</varlistentry>
107</variablelist>
[673b0d8]108
109</sect2>
110
111</sect1>
[81fd230]112
Note: See TracBrowser for help on using the repository browser.