source: general/prog/cmake.xml@ becfbd8

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 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 becfbd8 was e0f5a8f, checked in by Igor Živković <igor@…>, 8 years ago

Update to cmake-3.5.1.
Update to gdk-pixbuf-2.34.0.
Update to thunderbird-38.7.1.

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

  • Property mode set to 100644
File size: 8.5 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 "ca051f4a66375c89d1a524e726da0296">
10 <!ENTITY cmake-size "6.5 MB">
11 <!ENTITY cmake-buildsize "346 MB (648 MB with tests and cmake-gui)">
12 <!ENTITY cmake-time "4.2 SBU (12.1 SBU 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 &lfs79_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 the
126 tests only for Qt4 using <command>source setq4</command>
127 before the
128 <command>./bootstrap ...</command>) command.
129 One of the problematic
130 tests relates to the test procedures finding the correct Qt files. One
131 of 444 tests is known to fail under some circumstances related to Gtk+2
132 and c++ standards.
133
134 <!-- Please, don't remove this comment, needed if tests start to fail
135 again. If you want to investigate a problem with a given "problem1-test",
136 use <command>bin/ctest -R "problem1-test"</command> and, to omit it, use
137 <command>bin/ctest -E "problem1-test"</command>. These options can be
138 used together: <command>bin/ctest -R "problem1-test" -E
139 "problem2-test"</command>. Option -N can be used to display all
140 available tests, and you can run <command>bin/ctest</command> for a
141 sub-set of tests by using separated by spaces names or numbers as
142 options. Option -/-help can be used to show all options.-->
143 </para>
144
145 <para>
146 Now, as the <systemitem class="username">root</systemitem> user:
147 </para>
148
149<screen role="root"><userinput>make install</userinput></screen>
150
151 </sect2>
152
153 <sect2 role="commands">
154 <title>Command Explanations</title>
155
156 <para>
157 <parameter>--system-libs</parameter>: This switch forces the build system
158 to link against <application>Zlib</application>,
159 <application>Bzip2</application>, <application>cURL</application>,
160 <application>Expat</application> and <application>libarchive</application>
161 installed on the system.
162 </para>
163
164 <para>
165 <parameter>--no-system-jsoncpp</parameter>: This switch removes the
166 <application>JSON-C++</application> library from the list of system
167 libraries. A bundled version of that library is used instead.
168 </para>
169
170 <para>
171 <option>--qt-gui</option>: This switch enables building of the
172 <application>Qt</application>-based GUI for
173 <application>CMake</application>.
174 </para>
175
176 </sect2>
177
178 <sect2 role="content">
179 <title>Contents</title>
180
181 <segmentedlist>
182 <segtitle>Installed Programs</segtitle>
183 <segtitle>Installed Libraries</segtitle>
184 <segtitle>Installed Directories</segtitle>
185
186 <seglistitem>
187 <seg>
188 ccmake, cmake, cmake-gui (optional), cpack and ctest
189 </seg>
190 <seg>
191 None
192 </seg>
193 <seg>
194 /usr/share/cmake-&cmake-major-version; and
195 /usr/share/doc/cmake-&cmake-version;
196 </seg>
197 </seglistitem>
198 </segmentedlist>
199
200
201 <variablelist>
202 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
203 <?dbfo list-presentation="list"?>
204 <?dbhtml list-presentation="table"?>
205
206 <varlistentry id="ccmake">
207 <term><command>ccmake</command></term>
208 <listitem>
209 <para>
210 is a curses based interactive frontend to
211 <command>cmake</command>.
212 </para>
213 <indexterm zone="cmake ccmake">
214 <primary sortas="b-ccmake">ccmake</primary>
215 </indexterm>
216 </listitem>
217 </varlistentry>
218
219 <varlistentry id="cmake-prog">
220 <term><command>cmake</command></term>
221 <listitem>
222 <para>
223 is the makefile generator.
224 </para>
225 <indexterm zone="cmake cmake-prog">
226 <primary sortas="b-cmake">cmake</primary>
227 </indexterm>
228 </listitem>
229 </varlistentry>
230
231 <varlistentry id="cmake-gui">
232 <term><command>cmake-gui</command></term>
233 <listitem>
234 <para>
235 (optional) is the <application>Qt</application>-based frontent to
236 <command>cmake</command>.
237 </para>
238 <indexterm zone="cmake cmake-gui">
239 <primary sortas="b-cmake-gui">cmake-gui</primary>
240 </indexterm>
241 </listitem>
242 </varlistentry>
243
244 <varlistentry id="cpack">
245 <term><command>cpack</command></term>
246 <listitem>
247 <para>
248 is the <application>CMake</application> packaging program.
249 </para>
250 <indexterm zone="cmake cpack">
251 <primary sortas="b-cpack">cpack</primary>
252 </indexterm>
253 </listitem>
254 </varlistentry>
255
256 <varlistentry id="ctest">
257 <term><command>ctest</command></term>
258 <listitem>
259 <para>
260 is a testing utility for cmake-generated build trees.
261 </para>
262 <indexterm zone="cmake ctest">
263 <primary sortas="b-ctest">ctest</primary>
264 </indexterm>
265 </listitem>
266 </varlistentry>
267
268 </variablelist>
269
270 </sect2>
271
272</sect1>
Note: See TracBrowser for help on using the repository browser.