source: general/prog/doxygen.xml@ c41843e

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.8 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 c41843e was c41843e, checked in by Chris Staub <chris@…>, 9 years ago

Fix doxygen instructions by adding commands to create and enter build dir. Thanks to oblo on IRC for finding this.

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

  • Property mode set to 100644
File size: 9.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 doxygen-download-http "http://ftp.stack.nl/pub/doxygen/doxygen-&doxygen-version;.src.tar.gz">
8 <!ENTITY doxygen-download-ftp "ftp://ftp.stack.nl/pub/doxygen/doxygen-&doxygen-version;.src.tar.gz">
9 <!ENTITY doxygen-md5sum "79767ccd986f12a0f949015efb5f058f">
10 <!ENTITY doxygen-size "4.6 MB">
11 <!ENTITY doxygen-buildsize "174 MB (with all programs, docs and tests)">
12 <!ENTITY doxygen-time "2.4 SBU (with all programs, docs and 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 &lfs77_checked; &gcc5_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">Doxygen Dependencies</bridgehead>
90
91 <bridgehead renderas="sect4">Required</bridgehead>
92 <para role="required">
93 <xref linkend="cmake"/>
94 </para>
95
96 <bridgehead renderas="sect4">Optional</bridgehead>
97 <para role="optional">
98 <xref linkend="graphviz"/>,
99 <xref linkend="gs"/>,
100 <xref linkend="libxml2"/>,
101 <xref linkend="llvm"/> (with clang),
102 <xref linkend="python2"/> or <xref linkend="python3"/>,
103 <xref linkend="qt4"/> (for doxywizard),
104 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>) and
105 <xref linkend="xapian"/> (for doxyindexer)
106 </para>
107
108 <para condition="html" role="usernotes">User Notes:
109 <ulink url="&blfs-wiki;/doxygen"/>
110 </para>
111 </sect2>
112
113 <sect2 role="installation">
114 <title>Installation of Doxygen</title>
115
116 <para>
117 Install <application>Doxygen</application> by running the following
118 commands:
119 </para>
120
121<screen><userinput>mkdir -v build &amp;&amp;
122cd build &amp;&amp;
123
124cmake -G "Unix Makefiles" \
125 -DCMAKE_BUILD_TYPE=Release \
126 -DCMAKE_INSTALL_PREFIX=/usr \
127 .. &amp;&amp;
128
129make</userinput></screen>
130
131 <para>
132 To test the results, issue: <command>make tests</command>.
133 </para>
134
135 <para>
136 If you wish to generate the package documentation, you must have
137 <application>Python</application>, <application>TeX Live</application>
138 (for HTML docs) and <application>Ghostscript</application> (for PDF docs)
139 installed, then issue the following command:
140 </para>
141
142<screen><userinput>sed -i 's:man/man1:share/&amp;:' ../doc/CMakeLists.txt &amp;&amp;
143
144cmake -DDOC_INSTALL_DIR=share/doc/doxygen-&doxygen-version; -Dbuild_doc=ON .. &amp;&amp;
145
146make docs</userinput></screen>
147
148 <para>
149 Now, as the <systemitem class="username">root</systemitem> user:
150 </para>
151
152<screen role="root"><userinput>make install &amp;&amp;
153install -vm644 ../doc/*.1 /usr/man/man1</userinput></screen>
154
155 <para>
156
157 If you generated the package documentation, install with the following
158 command, as the <systemitem class="username">root</systemitem> user:
159 </para>
160
161<screen role="root"><userinput>make docs install</userinput></screen>
162
163 </sect2>
164
165 <sect2 role="commands">
166 <title>Command Explanations</title>
167
168 <para>
169 <command>sed -i ... CMakeLists.txt</command>: Fixes the directory where
170 the man pages are installed.
171 </para>
172
173 <para>
174 <option>-Dbuild_wizard=ON</option>: Use this switch if
175 <application>Qt4</application> is installed and you wish to build the GUI
176 front-end.
177 </para>
178
179 <para>
180 <option>-Dbuild_search=ON</option>: Use this switch if
181 <application>xapian</application> is installed and you wish to build
182 external search tools (<command>doxysearch.cgi</command> and
183 <command>doxyindexer)</command>.
184 </para>
185
186 <para>
187 <option>-Duse_libclang=ON</option>: Use this switch if
188 <application>llvm</application> with <application>clang</application> are
189 installed, to add support for libclang parsing.
190 </para>
191
192 </sect2>
193
194 <sect2 role="configuration">
195 <title>Configuring Doxygen</title>
196
197 <para>
198 There is no real configuration necessary for the
199 <application>Doxygen</application> package although three additional
200 packages are required if you wish to use extended capabilities. If you
201 need to use the language translation features, you must have <xref
202 linkend="python2"/> installed. If you require formulas to create PDF
203 documentation, then you must have <xref linkend="texlive"/> installed.
204 If you require formulas to convert PostScript files to bitmaps, then
205 you must have <xref linkend="gs"/> installed.
206 </para>
207
208 </sect2>
209
210 <sect2 role="content">
211 <title>Contents</title>
212
213 <segmentedlist>
214 <segtitle>Installed Programs</segtitle>
215 <segtitle>Installed Libraries</segtitle>
216 <segtitle>Installed Directory</segtitle>
217
218 <seglistitem>
219 <seg>
220 doxygen and optionally,
221 doxywizard, doxyindexer and doxysearch.cgi
222 </seg>
223 <seg>
224 None
225 </seg>
226 <seg>
227 /usr/share/doc/doxygen-&doxygen-version;
228 </seg>
229 </seglistitem>
230 </segmentedlist>
231
232 <variablelist>
233 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
234 <?dbfo list-presentation="list"?>
235 <?dbhtml list-presentation="table"?>
236
237 <varlistentry id="doxygen-prog">
238 <term><command>doxygen</command></term>
239 <listitem>
240 <para>
241 is a command-line based utility used to generate template
242 configuration files and then generate documentation from these
243 templates. Use <command>doxygen --help</command> for an
244 explanation of the command-line parameters.
245 </para>
246 <indexterm zone="doxygen doxygen-prog">
247 <primary sortas="b-doxygen">doxygen</primary>
248 </indexterm>
249 </listitem>
250 </varlistentry>
251
252 <varlistentry id="doxywizard">
253 <term><command>doxywizard</command></term>
254 <listitem>
255 <para>
256 is a GUI front-end for configuring and
257 running <command>doxygen</command>.
258 </para>
259 <indexterm zone="doxygen doxywizard">
260 <primary sortas="b-doxywizard">doxywizard</primary>
261 </indexterm>
262 </listitem>
263 </varlistentry>
264
265 <varlistentry id="doxyindexer">
266 <term><command>doxyindexer</command></term>
267 <listitem>
268 <para>
269 generates a search index called <filename>doxysearch.db</filename>
270 from one or more search data files produced by
271 <command>doxygen</command>. See, e.g. <ulink
272 url="http://www.stack.nl/~dimitri/doxygen/manual/extsearch.html"/>.
273 </para>
274 <indexterm zone="doxygen doxyindexer">
275 <primary sortas="b-doxyindexer">doxyindexer</primary>
276 </indexterm>
277 </listitem>
278 </varlistentry>
279
280 <varlistentry id="doxysearch.cgi">
281 <term><command>doxysearch.cgi</command></term>
282 <listitem>
283 <para>
284 is a CGI program to search the data indexed by
285 <command>doxyindexer</command>.
286 </para>
287 <indexterm zone="doxygen doxysearch.cgi">
288 <primary sortas="b-doxysearch.cgi">doxysearch.cgi</primary>
289 </indexterm>
290 </listitem>
291 </varlistentry>
292
293 </variablelist>
294
295 </sect2>
296
297</sect1>
Note: See TracBrowser for help on using the repository browser.