| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | <sect1 id="ch06-zlib"><title>Installing Zlib-&zlib-version;</title><?dbhtml filename="zlib.html" dir="chapter06"?><screen>Estimated build time:           &zlib-time;Estimated required disk space:  &zlib-compsize;</screen>&aa-zlib-shortdesc;&aa-zlib-dep;<sect2><title> </title><para> </para></sect2><sect2><title>Installation of Zlib</title><para>Prepare Zlib for compilation:</para><screen><userinput>./configure --prefix=/usr --shared</userinput></screen><note><para>Zlib is known to build its shared library incorrectly if CFLAGS isspecified in the environment. If you are using your own CFLAGS variable, besure to add the <emphasis role="strong">-fPIC</emphasis> directive to yourCFLAGS for the duration of the above command, then remove itafterwards.</para></note><para>Compile the package:</para><screen><userinput>make</userinput></screen><para>This package has a test suite available which can perform a number ofchecks to ensure it built correctly. The test suite for Zlib is quick andpainless so we recommend it be run. The following command will test the sharedlibrary:</para><screen><userinput>make check</userinput></screen><para>Install the shared library:</para><screen><userinput>make install</userinput></screen><para>Now also build the non-shared (static) library:</para><screen><userinput>make clean./configure --prefix=/usrmake</userinput></screen><para>The following command will test the static library:</para><screen><userinput>make check</userinput></screen><para>And install the package:</para><screen><userinput>make install</userinput></screen><para>It is good policy and common practice to place important libraries intothe <filename class="directory">/lib</filename> directory. This matters mostin scenarios where <filename class="directory">/usr</filename> is on aseparate partition. Essentially, the run-time components of any librariesdepended upon by programs in <filename class="directory">/bin</filename> or<filename class="directory">/sbin</filename> should reside in<filename class="directory">/lib</filename> so that they are on the rootpartition and available in the event of<filename class="directory">/usr</filename> being inaccessible.</para><para>Therefore we move the run-time components of the shared Zlib into<filename class="directory">/lib</filename> by issuing the followingcommand:</para><screen><userinput>mv /usr/lib/libz.so.* /lib</userinput></screen><para>Now we need to fix up the <filename>/usr/lib/libz.so</filename> symlinkbecause we just moved the location of the file it points to:</para><screen><userinput>ln -sf ../../lib/libz.so.1 /usr/lib/libz.so</userinput></screen></sect2></sect1>
 |