source: chapter05/libxcrypt.xml@ 01d1eba

multilib xry111/multilib
Last change on this file since 01d1eba was 01d1eba, checked in by Thomas Trepl <thomas@…>, 14 months ago

Add libxcrypt to ch5 - gcc(mx32) needs it

  • Property mode set to 100644
File size: 5.4 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-tools-libxcrypt" role="wrap">
9 <?dbhtml filename="libxcrypt.html"?>
10
11 <sect1info condition="script">
12 <productname>libxcrypt</productname>
13 <productnumber>&libxcrypt-version;</productnumber>
14 <address>&libxcrypt-url;</address>
15 </sect1info>
16
17 <title>Libxcrypt-&libxcrypt-version;</title>
18
19 <indexterm zone="ch-tools-libxcrypt">
20 <primary sortas="a-Libxcrypt">Libxcrypt</primary>
21 </indexterm>
22
23 <sect2 role="package">
24 <title/>
25
26 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
27 href="../chapter08/libxcrypt.xml"
28 xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
29
30 <segmentedlist>
31 <segtitle>&buildtime;</segtitle>
32 <segtitle>&diskspace;</segtitle>
33
34 <seglistitem>
35 <seg>&libxcrypt-fin-sbu;</seg>
36 <seg>&libxcrypt-fin-du;</seg>
37 </seglistitem>
38 </segmentedlist>
39
40 </sect2>
41
42 <sect2 role="installation">
43 <title>Installation of Libxcrypt</title>
44
45 <para>Prepare Libxcrypt for compilation:</para>
46
47<screen><userinput remap="configure">
48./configure --target=$LFS_TGT \
49 --prefix=/usr \
50 --enable-hashes=strong,glibc \
51 --enable-obsolete-api=no \
52 --disable-static \
53 --disable-failure-tokens</userinput></screen>
54
55 <variablelist>
56 <title>The meaning of the new configure options:</title>
57
58 <varlistentry>
59 <term><parameter>--enable-hashes=strong,glibc</parameter></term>
60 <listitem>
61 <para>Build strong hash algorithms recommended for security use
62 cases, and the hash algorithms provided by traditional Glibc
63 <systemitem class='library'>libcrypt</systemitem> for
64 compatibility.</para>
65 </listitem>
66 </varlistentry>
67
68 <varlistentry>
69 <term><parameter>--enable-obsolete-api=no</parameter></term>
70 <listitem>
71 <para>Disable obsolete API functions. They are not needed for
72 a modern Linux system built from source.</para>
73 </listitem>
74 </varlistentry>
75
76 <varlistentry>
77 <term><parameter>--disable-failure-tokens</parameter></term>
78 <listitem>
79 <para>Disable failure token feature. It's needed for
80 compatibility with the traditional hash libraries of some
81 platforms, but a Linux system based on Glibc does not need
82 it.</para>
83 </listitem>
84 </varlistentry>
85 </variablelist>
86
87 <para>Compile the package:</para>
88
89<screen><userinput remap="make">make</userinput></screen>
90
91 <para>To test the results, issue:</para>
92
93<screen><userinput remap="test">make check</userinput></screen>
94
95 <para>Install the package:</para>
96
97<screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen>
98
99 </sect2>
100
101 <!-- - - - - - - - - - -->
102 <!-- Multilib - 32bit -->
103 <!-- - - - - - - - - - -->
104 <sect2 arch="ml_32,ml_all" role="installation">
105 <title>Installation of Libxcrypt - 32bit</title>
106
107 <para>Clean previous build:</para>
108
109<screen><userinput remap="pre">make distclean</userinput></screen>
110
111 <para>Prepare File for compilation:</para>
112
113<screen><userinput remap="configure">CC="gcc -m32" \
114./configure --target=$LFS_TGT32 \
115 --prefix=/usr \
116 --host=i686-pc-linux-gnu \
117 --libdir=/usr/lib32 \
118 --enable-hashes=strong,glibc \
119 --enable-obsolete-api=glibc \
120 --disable-static \
121 --disable-failure-tokens</userinput></screen>
122
123 <para>Compile the package:</para>
124
125<screen><userinput remap="make">make</userinput></screen>
126
127 <para>Install the package:</para>
128
129<screen><userinput remap="install">cp -av .libs/libcrypt.so* $LFS/usr/lib32/ &amp;&amp;
130make DESTDIR=$LFS install-pkgconfigDATA &amp;&amp;
131ln -svf libxcrypt.pc $LFS/usr/lib32/pkgconfig/libcrypt.pc</userinput></screen>
132
133 </sect2><!-- m32 -->
134
135 <!-- - - - - - - - - - -->
136 <!-- Multilib - x32bit -->
137 <!-- - - - - - - - - - -->
138 <sect2 arch="ml_x32,ml_all" role="installation">
139 <title>Installation of Libxcrypt - x32bit</title>
140
141 <para>Clean previous build:</para>
142
143<screen><userinput remap="pre">make distclean</userinput></screen>
144
145 <para>Prepare File for compilation:</para>
146
147<screen><userinput remap="configure">CC="gcc -mx32" \
148./configure --target=$LFS_TGT32 \
149 --prefix=/usr \
150 --host=x86_64-pc-linux-gnux32 \
151 --libdir=/usr/libx32 \
152 --enable-hashes=strong,glibc \
153 --enable-obsolete-api=glibc \
154 --disable-static \
155 --disable-failure-tokens</userinput></screen>
156
157 <para>Compile the package:</para>
158
159<screen><userinput remap="make">make</userinput></screen>
160
161 <para>Install the package:</para>
162
163<screen><userinput remap="install">cp -av .libs/libcrypt.so* $LFS/usr/libx32/ &amp;&amp;
164make DESTDIR=$LFS install-pkgconfigDATA &amp;&amp;
165ln -svf libxcrypt.pc $LFS/usr/libx32/pkgconfig/libcrypt.pc</userinput></screen>
166
167 </sect2><!-- mx32 -->
168
169 <sect2 role="content">
170 <title/>
171
172 <para>Details on this package are located in
173 <xref linkend="contents-libxcrypt" role="."/></para>
174
175 </sect2>
176</sect1>
Note: See TracBrowser for help on using the repository browser.