source: general/prog/cmake.xml@ 7ed0e9d

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 7ed0e9d was 7ed0e9d, checked in by Bruce Dubbs <bdubbs@…>, 8 years ago

Reword cmake test issues

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@16672 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 8.6 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 cmake-download-http "http://www.cmake.org/files/v&cmake-major-version;/cmake-&cmake-version;.tar.gz">
8 <!ENTITY cmake-download-ftp " ">
9 <!ENTITY cmake-md5sum "cd3034e0a44256a0917e254167217fc8">
10 <!ENTITY cmake-size "6.5 MB">
11 <!ENTITY cmake-buildsize "696 MB (with tests and cmake-gui)">
12 <!ENTITY cmake-time "4.6 SBU, with parallelism = 4 (with tests and cmake-gui)">
13]>
14
15<sect1 id="cmake" xreflabel="CMake-&cmake-version;">
16 <?dbhtml filename="cmake.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>CMake-&cmake-version;</title>
24
25 <indexterm zone="cmake">
26 <primary sortas="a-CMake">CMake</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to CMake</title>
31
32 <para>
33 The <application>CMake</application> package contains a modern
34 toolset used for generating Makefiles. It is a successor of the
35 auto-generated <command>configure</command> script and aims to
36 be platform- and compiler-independent. A significant user of
37 <application>CMake</application> is <application>KDE</application>
38 since version 4.
39 </para>
40
41 &lfs78_checked;
42
43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
45 <listitem>
46 <para>
47 Download (HTTP): <ulink url="&cmake-download-http;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download (FTP): <ulink url="&cmake-download-ftp;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download MD5 sum: &cmake-md5sum;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download size: &cmake-size;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated disk space required: &cmake-buildsize;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated build time: &cmake-time;
73 </para>
74 </listitem>
75 </itemizedlist>
76
77 <bridgehead renderas="sect3">CMake Dependencies</bridgehead>
78
79 <bridgehead renderas="sect4">Recommended</bridgehead>
80 <para role="recommended">
81 <xref linkend="curl"/> and
82 <xref linkend="libarchive"/>
83 </para>
84
85 <bridgehead renderas="sect4">Optional</bridgehead>
86 <para role="optional">
87 <xref linkend="qt4"/> or <xref linkend="qt5"/> (for the Qt-based GUI),
88 <xref linkend="subversion"/> (for testing), and
89 <ulink url="http://pypi.python.org/pypi/Sphinx">Sphinx</ulink>
90 (for building documents)
91 </para>
92
93 <para condition="html" role="usernotes">User Notes:
94 <ulink url="&blfs-wiki;/cmake"/>
95 </para>
96 </sect2>
97
98 <sect2 role="installation">
99 <title>Installation of CMake</title>
100
101 <para>
102 If <application>Qt4</application> and <application>Qt5</application> are
103 installed in <filename class="directory">/opt</filename>, use
104 <command>source setqt4</command> or <command>source setqt5</command> to
105 choose which one will be used to build the Qt-based GUI.
106 </para>
107
108 <para>
109 Install <application>CMake</application> by running the following
110 commands:
111 </para>
112
113<screen><userinput>./bootstrap --prefix=/usr \
114 --system-libs \
115 --mandir=/share/man \
116 --no-system-jsoncpp \
117 --docdir=/share/doc/cmake-&cmake-version; &amp;&amp;
118make</userinput></screen>
119
120 <para>
121 To test the results, issue: <command>bin/ctest
122 -j<replaceable>&lt;N&gt;</replaceable> -O
123 cmake-&cmake-version;-test.log</command>, where
124 <replaceable>&lt;N&gt;</replaceable> is an integer between 1 and the
125 number of system cores. For some systems, it may be necessary to run
126 the tests only for Qt4 using <command>source setq4</command>, then
127 <command>export CXXFLAGS="-std=c++11"</command> before the
128 <command>./bootstrap ...</command>) command. If used, be sure to
129 <command>unset CXXFLAGS</command> after the tests. All the
130 problematic tests relate to the test procedures finding the correct
131 Qt files. Five of 447 test are known to fail under some circumstances.
132
133 <!-- Please, don't remove this comment, needed if tests start to fail
134 again. If you want to investigate a problem with a given "problem1-test",
135 use <command>bin/ctest -R "problem1-test"</command> and, to omit it, use
136 <command>bin/ctest -E "problem1-test"</command>. These options can be
137 used together: <command>bin/ctest -R "problem1-test" -E
138 "problem2-test"</command>. Option -N can be used to display all
139 available tests, and you can run <command>bin/ctest</command> for a
140 sub-set of tests by using separated by spaces names or numbers as
141 options. Option -/-help can be used to show all options.-->
142 </para>
143
144 <para>
145 Now, as the <systemitem class="username">root</systemitem> user:
146 </para>
147
148<screen role="root"><userinput>make install</userinput></screen>
149
150 </sect2>
151
152 <sect2 role="commands">
153 <title>Command Explanations</title>
154
155 <para>
156 <parameter>--system-libs</parameter>: This switch forces the build system
157 to link against <application>Zlib</application>,
158 <application>Bzip2</application>, <application>cURL</application>,
159 <application>Expat</application> and <application>libarchive</application>
160 installed on the system.
161 </para>
162
163 <para>
164 <parameter>--no-system-jsoncpp</parameter>: This switch removes the
165 <application>JSON-C++</application> library from the list of system
166 libraries. A bundled version of that library is used instead.
167 </para>
168
169 <para>
170 <option>--qt-gui</option>: This switch enables building of the
171 <application>Qt</application>-based GUI for
172 <application>CMake</application>.
173 </para>
174
175 </sect2>
176
177 <sect2 role="content">
178 <title>Contents</title>
179
180 <segmentedlist>
181 <segtitle>Installed Programs</segtitle>
182 <segtitle>Installed Libraries</segtitle>
183 <segtitle>Installed Directories</segtitle>
184
185 <seglistitem>
186 <seg>
187 ccmake, cmake, cmake-gui (optional), cpack and ctest
188 </seg>
189 <seg>
190 None
191 </seg>
192 <seg>
193 /usr/share/cmake-&cmake-major-version; and
194 /usr/share/doc/cmake-&cmake-version;
195 </seg>
196 </seglistitem>
197 </segmentedlist>
198
199
200 <variablelist>
201 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
202 <?dbfo list-presentation="list"?>
203 <?dbhtml list-presentation="table"?>
204
205 <varlistentry id="ccmake">
206 <term><command>ccmake</command></term>
207 <listitem>
208 <para>
209 is a curses based interactive frontend to
210 <command>cmake</command>.
211 </para>
212 <indexterm zone="cmake ccmake">
213 <primary sortas="b-ccmake">ccmake</primary>
214 </indexterm>
215 </listitem>
216 </varlistentry>
217
218 <varlistentry id="cmake-prog">
219 <term><command>cmake</command></term>
220 <listitem>
221 <para>
222 is the makefile generator.
223 </para>
224 <indexterm zone="cmake cmake-prog">
225 <primary sortas="b-cmake">cmake</primary>
226 </indexterm>
227 </listitem>
228 </varlistentry>
229
230 <varlistentry id="cmake-gui">
231 <term><command>cmake-gui</command></term>
232 <listitem>
233 <para>
234 (optional) is the <application>Qt</application>-based frontent to
235 <command>cmake</command>.
236 </para>
237 <indexterm zone="cmake cmake-gui">
238 <primary sortas="b-cmake-gui">cmake-gui</primary>
239 </indexterm>
240 </listitem>
241 </varlistentry>
242
243 <varlistentry id="cpack">
244 <term><command>cpack</command></term>
245 <listitem>
246 <para>
247 is the <application>CMake</application> packaging program.
248 </para>
249 <indexterm zone="cmake cpack">
250 <primary sortas="b-cpack">cpack</primary>
251 </indexterm>
252 </listitem>
253 </varlistentry>
254
255 <varlistentry id="ctest">
256 <term><command>ctest</command></term>
257 <listitem>
258 <para>
259 is a testing utility for cmake-generated build trees.
260 </para>
261 <indexterm zone="cmake ctest">
262 <primary sortas="b-ctest">ctest</primary>
263 </indexterm>
264 </listitem>
265 </varlistentry>
266
267 </variablelist>
268
269 </sect2>
270
271</sect1>
Note: See TracBrowser for help on using the repository browser.