source: general/genlib/boost.xml@ 45ab6c7

11.0 ken/refactor-virt lazarus qt5new trunk upgradedb
Last change on this file since 45ab6c7 was 45ab6c7, checked in by Xi Ruoyao <xry111@…>, 8 months ago

more SVN prop clean up

Remove "$LastChanged$" everywhere, and also some unused $Date$

  • Property mode set to 100644
File size: 7.7 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 <!ENTITY boost-download-http "https://dl.bintray.com/boostorg/release/&boost-version;/source/boost_&boost-dl-version;.tar.bz2">
8 <!ENTITY boost-download-ftp " ">
9 <!ENTITY boost-md5sum "ea217ed7c4414e93d44106c316966ae1">
10 <!ENTITY boost-size "116 MB">
11 <!ENTITY boost-buildsize "1.1 GB (175 MB installed)">
12 <!ENTITY boost-time "1.3 SBU (Using parallelism=4; add 1.3 SBU for tests)">
13]>
14
15<sect1 id="boost" xreflabel="Boost-&boost-version;">
16 <?dbhtml filename="boost.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>Boost-&boost-version;</title>
23
24 <indexterm zone="boost">
25 <primary sortas="a-Boost">Boost</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to Boost</title>
30
31 <para>
32 <application>Boost</application> provides a set of free peer-reviewed
33 portable C++ source libraries. It includes libraries for linear algebra,
34 pseudorandom number generation, multithreading, image processing, regular
35 expressions and unit testing.
36 </para>
37
38 &lfs101_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>
44 Download (HTTP): <ulink url="&boost-download-http;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download (FTP): <ulink url="&boost-download-ftp;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download MD5 sum: &boost-md5sum;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download size: &boost-size;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated disk space required: &boost-buildsize;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated build time: &boost-time;
70 </para>
71 </listitem>
72 </itemizedlist>
73 <!--
74 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
75 <itemizedlist spacing="compact">
76 <listitem>
77 <para>
78 Recommended patch, required to build <xref linkend="libreoffice"/>:
79 <ulink url="&patch-root;/boost-&boost-version;-gcc_10-1.patch"/>
80 </para>
81 </listitem>
82 </itemizedlist>
83 -->
84
85 <bridgehead renderas="sect3">Boost Dependencies</bridgehead>
86
87 <bridgehead renderas="sect4">Recommended</bridgehead>
88 <para role="recommended">
89 <xref linkend="which"/>
90 </para>
91
92 <bridgehead renderas="sect4">Optional</bridgehead>
93 <para role="optional">
94 <xref linkend="icu"/> and
95 <ulink url="https://www.open-mpi.org/">Open MPI</ulink>
96 </para>
97
98 <para condition="html" role="usernotes">User Notes:
99 <ulink url="&blfs-wiki;/boost"/>
100 </para>
101 </sect2>
102
103 <sect2 role="installation">
104 <title>Installation of Boost</title>
105<!--
106 <para>
107 First, apply a patch wwhich allows to build libreoffice with GCC 10
108 and later:
109 </para>
110
111<screen><userinput>patch -Np1 -i ../boost-&boost-version;-gcc_10-1.patch</userinput></screen>
112-->
113 <para>
114 This package can be built with several jobs running in parallel. In
115 the instructions below, <parameter>&lt;N&gt;</parameter> stands for the
116 number of jobs. Install <application>Boost</application> by running the
117 following commands:
118 </para>
119
120
121<screen><userinput>./bootstrap.sh --prefix=/usr --with-python=python3 &amp;&amp;
122./b2 stage -j<replaceable>&lt;N&gt;</replaceable> threading=multi link=shared</userinput></screen>
123
124 <para>
125 To run the Boost.Build's regression test,
126 issue <command>pushd tools/build/test;
127 python3 test_all.py; popd</command>.
128 All 153 tests should pass.
129 </para>
130
131 <para>
132 To run every library's regression tests, issue <command>pushd status;
133 ../b2; popd</command>. A few tests may fail. They take a very long time
134 (over 119 SBU at -j4) and use a very large amount of disk space
135 (46 GB). You should use the <parameter>-jN</parameter> switch to
136 speed them up.
137 </para>
138
139 <para>
140 Now, as the <systemitem class="username">root</systemitem> user:
141 </para>
142
143<!-- dev note: ./b2 - -prefix=<DESTDIR>/usr install threading=multi link=shared -->
144
145<screen role="root"><userinput>./b2 install threading=multi link=shared <!-- &amp;&amp;
146 ln -svf detail/sha1.hpp /usr/include/boost/uuid/sha1.hpp--></userinput></screen>
147
148 </sect2>
149
150 <sect2 role="commands">
151 <title>Command Explanations</title>
152
153 <para>
154 <parameter>threading=multi</parameter>: This parameter ensures that
155 <application>Boost</application> is built with multithreading support.
156 </para>
157
158 <para>
159 <parameter>link=shared</parameter>: This parameter ensures that only
160 shared libraries are created, except for libboost_exception and
161 libboost_test_exec_monitor which are created as static. Most people
162 will not need the static libraries, and most programs using
163 <application>Boost</application> only use the headers. Omit
164 this parameter if you do need static libraries.
165 </para>
166
167 <para>
168 <parameter>ln -svf detail/sha1.hpp ...</parameter>: The
169 <filename>uuid/sha1.hpp</filename> used to be a regular header, but by
170 boost_1_66_0 it had been changed to load the similar
171 <filename>detail/sha1.hpp</filename> header, with a message that it had
172 been deprecated. It has now been removed, but not every package which uses
173 it has been changed. An example is one of the libraries downloaded as a
174 git version by libreoffice. The symlink enables this and similar packages
175 to build.
176 </para>
177
178 <para>
179 <option>-jN</option>: This switch may be added to the
180 <command>b2</command> command lines, to run up to N processes in
181 parallel.
182 </para>
183
184 <para>
185 <option>--with-python=python3</option>: Add this switch to the <command>
186 bootstrap</command> command, if you want Boost
187 to use Python3 instead of Python2. Using Python3 is known to cause the
188 installation to fail on some systems.
189 </para>
190
191 </sect2>
192
193 <sect2 role="content">
194 <title>Contents</title>
195
196 <segmentedlist>
197 <segtitle>Installed Programs</segtitle>
198 <segtitle>Installed Libraries</segtitle>
199 <segtitle>Installed Directory</segtitle>
200
201 <seglistitem>
202 <seg>
203 None
204 </seg>
205 <seg>
206 libboost_atomic.so, libboost_chrono.so, libboost_container.so,
207 libboost_context.so, libboost_contract.so, libboost_coroutine.so,
208 libboost_date_time.so, libboost_exception.a, libboost_fiber.so,
209 libboost_filesystem.so,
210 libboost_graph.so, libboost_iostreams.so, libboost_locale.so,
211 libboost_log_setup.so, libboost_log.so, libboost_math_c99.so,
212 libboost_math_c99f.so, libboost_math_c99l.so, libboost_math_tr1.so,
213 libboost_math_tr1f.so, libboost_math_tr1l.so,
214 libboost_nowide.so,
215 libboost_prg_exec_monitor.so, libboost_program_options.so,
216 libboost_python3&python3-minor;.so, libboost_random.so,
217 libboost_regex.so, libboost_serialization.so,
218 libboost_stacktrace_addr2line.so, libboost_stacktrace_basic.so,
219 libboost_stacktrace_noop.so, libboost_system.so,
220 libboost_test_exec_monitor.a, libboost_thread.so, libboost_timer.so,
221 libboost_type_erasure.so, libboost_unit_test_framework.so,
222 libboost_wave.so, and libboost_wserialization.so
223 </seg>
224 <seg>
225 /usr/include/boost
226 </seg>
227 </seglistitem>
228 </segmentedlist>
229
230 </sect2>
231
232</sect1>
Note: See TracBrowser for help on using the repository browser.