source: general/genlib/boost.xml@ 94b4def9

systemd-13485
Last change on this file since 94b4def9 was 94b4def9, checked in by DJ Lucas <dj@…>, 8 years ago

Merge Chapter 10 changes from trunk, fix boost sed (from trunk).

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/branches/systemd@16844 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 6.9 KB
RevLine 
[47969a6]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
[355495ce]7 <!ENTITY boost-download-http "&sourceforge-repo;/boost/boost_&boost-dl-version;.tar.bz2">
[47969a6]8 <!ENTITY boost-download-ftp " ">
[83f6c770]9 <!ENTITY boost-md5sum "65a840e1a0b13a558ff19eeb2c4f0cbe">
10 <!ENTITY boost-size "74 MB">
11 <!ENTITY boost-buildsize "899 MB (with Boost.Build's regression test)">
12 <!ENTITY boost-time "5.5 SBU (with Boost.Build's regression test)">
[47969a6]13]>
14
[355495ce]15<sect1 id="boost" xreflabel="Boost-&boost-version;">
[47969a6]16 <?dbhtml filename="boost.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Boost-&boost-version;</title>
24
25 <indexterm zone="boost">
[355495ce]26 <primary sortas="a-Boost">Boost</primary>
[47969a6]27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Boost</title>
31
[355495ce]32 <para>
[fa29663]33 <application>Boost</application> provides a set of free peer-reviewed
34 portable C++ source libraries. It includes libraries for linear algebra,
35 pseudorandom number generation, multithreading, image processing, regular
36 expressions and unit testing.
[355495ce]37 </para>
[47969a6]38
[a3394a71]39 &lfs78_checked;
[47969a6]40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
[355495ce]44 <para>
45 Download (HTTP): <ulink url="&boost-download-http;"/>
46 </para>
[47969a6]47 </listitem>
48 <listitem>
[355495ce]49 <para>
50 Download (FTP): <ulink url="&boost-download-ftp;"/>
51 </para>
[47969a6]52 </listitem>
53 <listitem>
[355495ce]54 <para>
55 Download MD5 sum: &boost-md5sum;
56 </para>
[47969a6]57 </listitem>
58 <listitem>
[355495ce]59 <para>
60 Download size: &boost-size;
61 </para>
[47969a6]62 </listitem>
63 <listitem>
[355495ce]64 <para>
65 Estimated disk space required: &boost-buildsize;
66 </para>
[47969a6]67 </listitem>
68 <listitem>
[355495ce]69 <para>
70 Estimated build time: &boost-time;
71 </para>
[47969a6]72 </listitem>
73 </itemizedlist>
74
[355495ce]75 <bridgehead renderas="sect3">Boost Dependencies</bridgehead>
[47969a6]76
77 <bridgehead renderas="sect4">Optional</bridgehead>
[f7fbe1f7]78 <para role="optional">
[ac38e9dc]79 <xref linkend="icu"/>,
[83f6c770]80 <xref linkend="python2"/> or <xref linkend="python3"/>, and
81 <ulink url="https://www.open-mpi.org/">Open MPI</ulink>
[47969a6]82 </para>
83
84 <para condition="html" role="usernotes">User Notes:
[355495ce]85 <ulink url="&blfs-wiki;/boost"/>
86 </para>
[47969a6]87 </sect2>
88
89 <sect2 role="installation">
90 <title>Installation of Boost</title>
91
[83f6c770]92 <para>
[a6a9fc5]93 First, fix a bug with the header files path, when Python3 is used:
[83f6c770]94 </para>
95
[94b4def9]96<screen><userinput>sed -e '/using python/ s@;@: /usr/include/python${PYTHON_VERSION/3*/${PYTHON_VERSION}m} @' \
97-i bootstrap.sh</userinput></screen>
[83f6c770]98
[355495ce]99 <para>
100 Install <application>Boost</application> by running the following
[a7f550d8]101 commands:
[355495ce]102 </para>
[47969a6]103
[83f6c770]104<screen><userinput>sed -e '1 i#ifndef Q_MOC_RUN' \
105 -e '$ a#endif' \
106 -i boost/type_traits/detail/has_binary_operator.hpp &amp;&amp;
107
108./bootstrap.sh --prefix=/usr &amp;&amp;
[a7f550d8]109./b2 stage threading=multi link=shared</userinput></screen>
110
111 <para>
[ac38e9dc]112 To run the Boost.Build's regression test (<xref linkend="python2"/>
113 required), issue <command>pushd tools/build/test; python test_all.py;
[83f6c770]114 popd</command>. One test out of 130 fails.
[ac38e9dc]115 </para>
116
117 <para>
[83f6c770]118 To run every library's regression tests, issue <command>pushd status;
119 ../b2; popd</command>. A few tests may fail. They take very long (over
120 120/50 SBU, one/four cores) and use a very large disk space (up to
121 40 GB). You can use the <parameter>-jN</parameter> switch to
122 speed them up.
[a7f550d8]123 </para>
124
125 <para>
126 Now, as the <systemitem class="username">root</systemitem> user:
127 </para>
128
[4adf827]129<!-- dev note: ./b2 - -prefix=<DESTDIR>/usr install threading=multi link=shared -->
130
[a7f550d8]131<screen role="root"><userinput>./b2 install threading=multi link=shared</userinput></screen>
[47969a6]132
133 </sect2>
[54bed77b]134
[47969a6]135 <sect2 role="commands">
136 <title>Command Explanations</title>
137
[83f6c770]138 <para>
139 <command>sed ... has_binary_operator.hpp</command>: This command
140 fixes a header to overcome a problem with Qt's moc command. It
141 is necessary for building some KDE packages.
142 </para>
143
[355495ce]144 <para>
145 <parameter>threading=multi</parameter>: This parameter ensures that
146 <application>Boost</application> is built with multithreading support.
147 </para>
148
149 <para>
[ac38e9dc]150 <parameter>link=shared</parameter>: This parameter ensures that only
151 shared libraries are created, except for libboost_exception and
152 libboost_test_exec_monitor which are created as static. Most people
[83f6c770]153 will not need the static libraries. Indeed most programs using
[ac38e9dc]154 <application>Boost</application> only use the headers. Omit
155 this parameter if you do need static libraries.
156 </para>
157
158 <para>
[83f6c770]159 <option>-jN</option>: This switch may be added to the
160 <command>b2</command> command lines, to run up to N processes in
161 parallel.
162 </para>
163
164 <para>
165 <option>--with-python=python3</option>: Add this switch if you want Boost
166 to use Python3 instead of Python2.
[355495ce]167 </para>
[47969a6]168
169 </sect2>
[54bed77b]170
[47969a6]171 <sect2 role="content">
172 <title>Contents</title>
173
174 <segmentedlist>
[c3c56b2]175 <segtitle>Installed Programs</segtitle>
[47969a6]176 <segtitle>Installed Libraries</segtitle>
177 <segtitle>Installed Directory</segtitle>
178
179 <seglistitem>
[c3c56b2]180 <seg>
181 None
182 </seg>
[355495ce]183 <seg>
[83f6c770]184 libboost_atomic.so,
185 libboost_chrono.a,
186 libboost_chrono.so,
187 libboost_container.so,
188 libboost_context.so,
189 libboost_coroutine.so,
190 libboost_date_time.so,
191 libboost_exception.a,
192 libboost_filesystem.so,
193 libboost_graph.so,
194 libboost_iostreams.so,
195 libboost_locale.so,
196 libboost_log_setup.so,
197 libboost_log.so,
198 libboost_math_c99.so,
199 libboost_math_c99f.so,
200 libboost_math_c99l.so,
201 libboost_math_tr1.so,
202 libboost_math_tr1f.so,
203 libboost_math_tr1l.so,
204 libboost_prg_exec_monitor.so,
205 libboost_program_options.so,
206 libboost_python.so,
207 libboost_python3.so,
208 libboost_random.so,
209 libboost_regex.so,
210 libboost_serialization.so,
211 libboost_signals.so,
212 libboost_system.a,
213 libboost_system.so,
214 libboost_test_exec_monitor.a,
215 libboost_thread.so,
216 libboost_timer.a,
217 libboost_timer.so,
218 libboost_type_erasure.so,
219 libboost_unit_test_framework.so,
220 libboost_wave.so,
[ac38e9dc]221 and libboost_wserialization.so
[355495ce]222 </seg>
223 <seg>
224 /usr/include/boost
225 </seg>
[47969a6]226 </seglistitem>
227 </segmentedlist>
[355495ce]228
[47969a6]229 </sect2>
230
231</sect1>
Note: See TracBrowser for help on using the repository browser.