source: general/prog/doxygen.xml@ f2abc73

10.0 10.1 11.0 ken/refactor-virt lazarus qt5new trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since f2abc73 was f2abc73, checked in by Bruce Dubbs <bdubbs@…>, 14 months ago

Remove mention of a deleted file from mc instructions.
Update to doxygen-1.8.19.

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

  • Property mode set to 100644
File size: 9.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 doxygen-download-http "http://doxygen.nl/files/doxygen-&doxygen-version;.src.tar.gz">
8 <!ENTITY doxygen-download-ftp " ">
9 <!ENTITY doxygen-md5sum "76e7362eb224ee57e3a3e1b60e449f85">
10 <!ENTITY doxygen-size "4.9 MB">
11 <!ENTITY doxygen-buildsize "157 MB (with tests)">
12 <!ENTITY doxygen-time "1.3 SBU (using parallelism=4; with tests)">
13]>
14
15<sect1 id="doxygen" xreflabel="Doxygen-&doxygen-version;">
16 <?dbhtml filename="doxygen.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Doxygen-&doxygen-version;</title>
24
25 <indexterm zone="doxygen">
26 <primary sortas="a-Doxygen">Doxygen</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Doxygen</title>
31
32 <para>
33 The <application>Doxygen</application> package contains a documentation
34 system for C++, C, Java, Objective-C, Corba IDL and to some extent PHP,
35 C# and D. It is useful for generating HTML documentation and/or an
36 off-line reference manual from a set of documented source files. There
37 is also support for generating output in RTF, PostScript, hyperlinked
38 PDF, compressed HTML, and Unix man pages. The documentation is extracted
39 directly from the sources, which makes it much easier to keep the
40 documentation consistent with the source code.
41 </para>
42
43 <para>
44 You can also configure <application>Doxygen</application> to extract
45 the code structure from undocumented source files. This is very useful
46 to quickly find your way in large source distributions. Used along with
47 <application>Graphviz</application>, you can also visualize the relations
48 between the various elements by means of include dependency graphs,
49 inheritance diagrams, and collaboration diagrams, which are all generated
50 automatically.
51 </para>
52
53 &lfs91_checked;
54
55 <bridgehead renderas="sect3">Package Information</bridgehead>
56 <itemizedlist spacing="compact">
57 <listitem>
58 <para>
59 Download (HTTP): <ulink url="&doxygen-download-http;"/>
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Download (FTP): <ulink url="&doxygen-download-ftp;"/>
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Download MD5 sum: &doxygen-md5sum;
70 </para>
71 </listitem>
72 <listitem>
73 <para>
74 Download size: &doxygen-size;
75 </para>
76 </listitem>
77 <listitem>
78 <para>
79 Estimated disk space required: &doxygen-buildsize;
80 </para>
81 </listitem>
82 <listitem>
83 <para>
84 Estimated build time: &doxygen-time;
85 </para>
86 </listitem>
87 </itemizedlist>
88<!--
89 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
90 <itemizedlist spacing='compact'>
91 <listitem>
92 <para>
93 Required patch: <ulink
94 url="&patch-root;/doxygen-&doxygen-version;-flex_2_6_0_fix-1.patch"/>
95 </para>
96 </listitem>
97 </itemizedlist>-->
98
99 <bridgehead renderas="sect3">Doxygen Dependencies</bridgehead>
100
101 <bridgehead renderas="sect4">Required</bridgehead>
102 <para role="required">
103 <xref linkend="cmake"/> and
104 <xref linkend="git"/>
105 </para>
106
107 <bridgehead renderas="sect4">Optional</bridgehead>
108 <para role="optional">
109 <xref linkend="graphviz"/>,
110 <xref linkend="gs"/>,
111 <xref linkend="libxml2"/> (required for the tests),
112 <xref linkend="llvm"/> (with clang),
113 <!-- Can someone check this? With LLVM7, it fails to build. -->
114 <xref linkend="python2"/>,
115 <xref linkend="qt5"/> (for doxywizard),
116 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>), and
117 <xref linkend="xapian"/> (for doxyindexer)
118 </para>
119
120 <para condition="html" role="usernotes">User Notes:
121 <ulink url="&blfs-wiki;/doxygen"/>
122 </para>
123 </sect2>
124
125 <sect2 role="installation">
126 <title>Installation of Doxygen</title>
127
128 <para>
129 Install <application>Doxygen</application> by running the following
130 commands:
131 </para>
132
133<screen><userinput>mkdir -v build &amp;&amp;
134cd build &amp;&amp;
135
136cmake -G "Unix Makefiles" \
137 -DCMAKE_BUILD_TYPE=Release \
138 -DCMAKE_INSTALL_PREFIX=/usr \
139 -Wno-dev .. &amp;&amp;
140
141make</userinput></screen>
142
143 <para>
144 To test the results, issue: <command>make tests</command>.
145 </para>
146
147 <para>
148 If you wish to generate the package documentation, you must have
149 <application>Python</application>, <application>TeX Live</application>
150 (for HTML docs) and <application>Ghostscript</application> (for PDF docs)
151 installed, then issue the following command:
152 </para>
153
154<screen remap="doc"><userinput>cmake -DDOC_INSTALL_DIR=share/doc/doxygen-&doxygen-version; -Dbuild_doc=ON .. &amp;&amp;
155
156make docs</userinput></screen>
157
158 <para>
159 Now, as the <systemitem class="username">root</systemitem> user:
160 </para>
161
162<screen role="root"><userinput>make install &amp;&amp;
163install -vm644 ../doc/*.1 /usr/share/man/man1</userinput></screen>
164
165 <para>
166 If you have generated the package documentation, then the man pages are
167 automatically installed, and you do not need to run the last
168 <command>install ...</command> command.
169 </para>
170
171 </sect2>
172
173 <sect2 role="commands">
174 <title>Command Explanations</title>
175
176 <para>
177 <option>-Dbuild_wizard=ON</option>: Use this switch if
178 <application>Qt5</application> is installed and you wish to build the GUI
179 front-end.
180 </para>
181
182 <para>
183 <option>-Dbuild_search=ON</option>: Use this switch if
184 <application>xapian</application> is installed and you wish to build
185 external search tools (<command>doxysearch.cgi</command> and
186 <command>doxyindexer)</command>.
187 </para>
188<!--
189 <para>
190 <option>-Dforce_qt4=ON</option>: Use this switch to build
191 <command>doxywizard</command> with Qt4 even if Qt5 is installed.
192 </para>-->
193
194 <para>
195 <option>-Duse_libclang=ON</option>: Use this switch if
196 <application>llvm</application> with <application>clang</application> are
197 installed, to add support for libclang parsing.
198 </para>
199
200 </sect2>
201
202 <sect2 role="configuration">
203 <title>Configuring Doxygen</title>
204
205 <para>
206 There is no real configuration necessary for the
207 <application>Doxygen</application> package although three additional
208 packages are required if you wish to use extended capabilities. If you
209 need to use the language translation features, you must have <xref
210 linkend="python2"/> installed. If you require formulas to create PDF
211 documentation, then you must have <xref linkend="texlive"/> installed.
212 If you require formulas to convert PostScript files to bitmaps, then
213 you must have <xref linkend="gs"/> installed.
214 </para>
215
216 </sect2>
217
218 <sect2 role="content">
219 <title>Contents</title>
220
221 <segmentedlist>
222 <segtitle>Installed Programs</segtitle>
223 <segtitle>Installed Libraries</segtitle>
224 <segtitle>Installed Directory</segtitle>
225
226 <seglistitem>
227 <seg>
228 doxygen and optionally,
229 doxywizard, doxyindexer and doxysearch.cgi
230 </seg>
231 <seg>
232 None
233 </seg>
234 <seg>
235 /usr/share/doc/doxygen-&doxygen-version;
236 </seg>
237 </seglistitem>
238 </segmentedlist>
239
240 <variablelist>
241 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
242 <?dbfo list-presentation="list"?>
243 <?dbhtml list-presentation="table"?>
244
245 <varlistentry id="doxygen-prog">
246 <term><command>doxygen</command></term>
247 <listitem>
248 <para>
249 is a command-line based utility used to generate template
250 configuration files and then generate documentation from these
251 templates. Use <command>doxygen --help</command> for an
252 explanation of the command-line parameters.
253 </para>
254 <indexterm zone="doxygen doxygen-prog">
255 <primary sortas="b-doxygen">doxygen</primary>
256 </indexterm>
257 </listitem>
258 </varlistentry>
259
260 <varlistentry id="doxywizard">
261 <term><command>doxywizard</command></term>
262 <listitem>
263 <para>
264 is a GUI front-end for configuring and
265 running <command>doxygen</command>.
266 </para>
267 <indexterm zone="doxygen doxywizard">
268 <primary sortas="b-doxywizard">doxywizard</primary>
269 </indexterm>
270 </listitem>
271 </varlistentry>
272
273 <varlistentry id="doxyindexer">
274 <term><command>doxyindexer</command></term>
275 <listitem>
276 <para>
277 generates a search index called <filename>doxysearch.db</filename>
278 from one or more search data files produced by
279 <command>doxygen</command>. See, e.g. <ulink
280 url="http://www.stack.nl/~dimitri/doxygen/manual/extsearch.html"/>.
281 </para>
282 <indexterm zone="doxygen doxyindexer">
283 <primary sortas="b-doxyindexer">doxyindexer</primary>
284 </indexterm>
285 </listitem>
286 </varlistentry>
287
288 <varlistentry id="doxysearch.cgi">
289 <term><command>doxysearch.cgi</command></term>
290 <listitem>
291 <para>
292 is a CGI program to search the data indexed by
293 <command>doxyindexer</command>.
294 </para>
295 <indexterm zone="doxygen doxysearch.cgi">
296 <primary sortas="b-doxysearch.cgi">doxysearch.cgi</primary>
297 </indexterm>
298 </listitem>
299 </varlistentry>
300
301 </variablelist>
302
303 </sect2>
304
305</sect1>
Note: See TracBrowser for help on using the repository browser.