|
1 /****************************************************************************** |
|
2 * |
|
3 * |
|
4 * |
|
5 * Copyright (C) 1997-2008 by Dimitri van Heesch. |
|
6 * |
|
7 * Permission to use, copy, modify, and distribute this software and its |
|
8 * documentation under the terms of the GNU General Public License is hereby |
|
9 * granted. No representations are made about the suitability of this software |
|
10 * for any purpose. It is provided "as is" without express or implied warranty. |
|
11 * See the GNU General Public License for more details. |
|
12 * |
|
13 * Documents produced by Doxygen are derivative works derived from the |
|
14 * input used in their production; they are not affected by this license. |
|
15 * |
|
16 */ |
|
17 /*! \page install Installation |
|
18 |
|
19 \addindex installation |
|
20 First go to the |
|
21 <a href="http://www.doxygen.org/download.html">download</a> page |
|
22 \latexonly({\tt http://www.doxygen.org/download.html})\endlatexonly |
|
23 to get the latest distribution, if you did not have it already. |
|
24 |
|
25 This section is divided into the following sections: |
|
26 <ul> |
|
27 <li>\ref install_src_unix "Compiling from source on Unix" |
|
28 <li>\ref install_bin_unix "Installing the binaries on Unix" |
|
29 <li>\ref unix_problems "Known compilation problems for Unix" |
|
30 <li>\ref install_src_windows "Compiling from source on Windows" |
|
31 <li>\ref install_bin_windows "Installing the binaries on Windows" |
|
32 <li>\ref build_tools "Tools used to develop doxygen" |
|
33 </ul> |
|
34 |
|
35 \section install_src_unix Compiling from source on Unix |
|
36 |
|
37 If you downloaded the source distribution, you need at least the |
|
38 following to build the executable: |
|
39 <ul> |
|
40 <li>The <a href="ftp://prep.ai.mit.edu/pub/gnu/">GNU</a> tools |
|
41 flex, bison and GNU make, and strip |
|
42 \addindex flex |
|
43 \addindex bison |
|
44 \addindex make |
|
45 \addindex strip |
|
46 <li>In order to generate a Makefile for your platform, you need |
|
47 <a href="http://www.perl.com/">perl</a> |
|
48 \latexonly(see {\tt http://www.perl.com/})\endlatexonly. |
|
49 \addindex perl |
|
50 <li>The configure script assume the availibility of standard Unix tools such |
|
51 as sed, date, find, uname, mv, cp, cat, echo, tr, cd, and rm. |
|
52 </ul> |
|
53 |
|
54 To take full advantage of doxygen's features the following additional |
|
55 tools should be installed. |
|
56 |
|
57 <ul> |
|
58 <li>Qt Software's GUI toolkit |
|
59 <A HREF="http://www.trolltech.com/products/qt.html">Qt</A> |
|
60 \latexonly(see {\tt http://www.trolltech.com/products/qt.html})\endlatexonly |
|
61 \addindex Qt |
|
62 version 3.3 or higher. |
|
63 This is needed to build the GUI front-end doxywizard. |
|
64 <li>A \f$\mbox{\LaTeX}\f$ distribution: for instance |
|
65 <a href="http://www.tug.org/interest.html#free">teTeX 1.0</a> |
|
66 \latexonly \\par (see {\tt http://www.tug.org/interest.html\#free})\endlatexonly. |
|
67 This is needed for generating LaTeX, Postscript, and PDF output. |
|
68 <li><a href="http://www.graphviz.org/"> |
|
69 the Graph visualization toolkit version 1.8.10 or higher</a> |
|
70 \latexonly \\par (see {\tt http://www.graphviz.org/})\endlatexonly. |
|
71 Needed for the include dependency graphs, |
|
72 the graphical inheritance graphs, and the collaboration graphs. |
|
73 If you compile graphviz yourself, make sure you do include |
|
74 freetype support (which requires the freetype library and header files), |
|
75 otherwise the graphs will not render proper text labels. |
|
76 <li>For formulas or if you do not wish to use pdflatex, the ghostscript interpreter |
|
77 is needed. You can find it at |
|
78 <a href="http://www.ghostscript.com/">www.ghostscript.com</a>. |
|
79 <li>In order to generate doxygen's own documentation, Python is needed, you |
|
80 can find it at <a href="http://www.python.org">www.python.org</a>. |
|
81 </ul> |
|
82 |
|
83 Compilation is now done by performing the following steps: |
|
84 |
|
85 <ol> |
|
86 <li> Unpack the archive, unless you already have done that: |
|
87 |
|
88 \verbatim |
|
89 gunzip doxygen-$VERSION.src.tar.gz # uncompress the archive |
|
90 tar xf doxygen-$VERSION.src.tar # unpack it |
|
91 \endverbatim |
|
92 |
|
93 <li>Run the configure script: |
|
94 |
|
95 \verbatim |
|
96 sh ./configure |
|
97 \endverbatim |
|
98 |
|
99 The script tries to determine the platform you use, the make tool |
|
100 (which \e must be GNU make) and the perl |
|
101 interpreter. It will report what it finds. |
|
102 |
|
103 To override the auto detected platform and compiler you can run |
|
104 configure as follows: |
|
105 |
|
106 \verbatim |
|
107 configure --platform platform-type |
|
108 \endverbatim |
|
109 |
|
110 See the <code>PLATFORMS</code> file for a list of possible platform |
|
111 options. |
|
112 |
|
113 If you have Qt-3.3.x installed and want to build the GUI |
|
114 front-end, you should run the configure script with |
|
115 the <code>--with-doxywizard</code> option: |
|
116 |
|
117 \verbatim |
|
118 configure --with-doxywizard |
|
119 \endverbatim |
|
120 |
|
121 For an overview of other configuration options use |
|
122 |
|
123 \verbatim |
|
124 configure --help |
|
125 \endverbatim |
|
126 |
|
127 <li>Compile the program by running make: |
|
128 |
|
129 \verbatim |
|
130 make |
|
131 \endverbatim |
|
132 |
|
133 The program should compile without problems and three binaries |
|
134 (<code>doxygen</code> and <code>doxytag</code>) |
|
135 should be available in the bin directory of the distribution. |
|
136 |
|
137 <li>Optional: Generate the user manual. |
|
138 |
|
139 \verbatim |
|
140 make docs |
|
141 \endverbatim |
|
142 |
|
143 To let doxygen generate the HTML documentation. |
|
144 |
|
145 The HTML directory of the distribution will now contain the html |
|
146 documentation (just point a HTML browser to the file |
|
147 <code>index.html</code> in the |
|
148 html directory). You will need the <code>python</code> interpreter |
|
149 for this. |
|
150 |
|
151 <li>Optional: Generate a PDF version of the manual |
|
152 (you will need <code>pdflatex</code>, <code>makeindex</code>, and |
|
153 <code>egrep</code> for this). |
|
154 |
|
155 \verbatim |
|
156 make pdf |
|
157 \endverbatim |
|
158 |
|
159 The PDF manual <code>doxygen_manual.pdf</code> will be located |
|
160 in the latex directory of the distribution. Just |
|
161 view and print it via the acrobat reader. |
|
162 |
|
163 </ol> |
|
164 |
|
165 \section install_bin_unix Installing the binaries on Unix |
|
166 |
|
167 After the compilation of the source code do a <code>make install</code> |
|
168 to install doxygen. If you downloaded the binary distribution for Unix, |
|
169 type: |
|
170 |
|
171 \verbatim |
|
172 ./configure |
|
173 make install |
|
174 \endverbatim |
|
175 |
|
176 Binaries are installed into the directory <code>\<prefix\>/bin</code>. |
|
177 Use <code>make install_docs</code> to install the |
|
178 documentation and examples into <code>\<docdir\>/doxygen</code>. |
|
179 |
|
180 <code>\<prefix\></code> defaults to <code>/usr/local</code> but can be changed with |
|
181 the <code>--prefix</code> option of the configure script. |
|
182 The default <code>\<docdir\></code> directory is |
|
183 <code>\<prefix\>/share/doc/packages</code> and can be changed with |
|
184 the <code>--docdir</code> option of the configure script. |
|
185 |
|
186 Alternatively, you can also copy the binaries from the <code>bin</code> |
|
187 directory manually to some <code>bin</code> directory in your search path. |
|
188 This is sufficient to use doxygen. |
|
189 |
|
190 \note You need the GNU install tool for this to work (it is part of |
|
191 the coreutils package). Other install tools may put the binaries in |
|
192 the wrong directory! |
|
193 |
|
194 If you have a RPM or DEP package, then please follow the |
|
195 standard installation procedure that is required for these packages. |
|
196 |
|
197 \section unix_problems Known compilation problems for Unix |
|
198 |
|
199 <b>Qt problems</b> |
|
200 |
|
201 The Qt include files and libraries are not a subdirectory of the |
|
202 directory pointed to by QTDIR on some systems |
|
203 (for instance on Red Hat 6.0 includes are in /usr/include/qt and |
|
204 libs are in /usr/lib). |
|
205 |
|
206 The solution: go to the root of the doxygen distribution and do: |
|
207 \verbatim |
|
208 mkdir qt |
|
209 cd qt |
|
210 ln -s your-qt-include-dir-here include |
|
211 ln -s your-qt-lib-dir-here lib |
|
212 export QTDIR=$PWD |
|
213 \endverbatim |
|
214 |
|
215 If you have a csh-like shell you should use <code>setenv QTDIR \$PWD</code> |
|
216 instead of the <code>export</code> command above. |
|
217 |
|
218 Now install doxygen as described above. |
|
219 |
|
220 <b>Bison problems</b> |
|
221 |
|
222 Versions 1.31 to 1.34 of bison contain a "bug" that results in a |
|
223 compiler errors like this: |
|
224 |
|
225 ce_parse.cpp:348: member `class CPPValue yyalloc::yyvs' with |
|
226 constructor not allowed in union |
|
227 |
|
228 This problem has been solved in version 1.35 (versions before 1.31 |
|
229 will also work). |
|
230 |
|
231 <b>Latex problems</b> |
|
232 |
|
233 The file <code>a4wide.sty</code> is not available for all distributions. If |
|
234 your distribution does not have it please select another paper type |
|
235 in the config file (see the \ref cfg_paper_type "PAPER_TYPE" tag in the |
|
236 config file). |
|
237 |
|
238 <b>HP-UX \& Digital Unix problems</b> |
|
239 |
|
240 If you are compiling for HP-UX with aCC and you get this error: |
|
241 \verbatim |
|
242 /opt/aCC/lbin/ld: Unsatisfied symbols: |
|
243 alloca (code) |
|
244 \endverbatim |
|
245 then you should (according to Anke Selig) edit <code>ce_parse.cpp</code> |
|
246 and replace |
|
247 \verbatim |
|
248 extern "C" { |
|
249 void *alloca (unsigned int); |
|
250 }; |
|
251 \endverbatim |
|
252 with |
|
253 \verbatim |
|
254 #include <alloca.h> |
|
255 \endverbatim |
|
256 |
|
257 If that does not help, try removing <code>ce_parse.cpp</code> and let |
|
258 bison rebuild it (this worked for me). |
|
259 |
|
260 If you are compiling for Digital Unix, the same problem can be solved |
|
261 (according to Barnard Schmallhof) by replacing the following in |
|
262 ce_parse.cpp: |
|
263 |
|
264 \verbatim |
|
265 #else /* not GNU C. */ |
|
266 #if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \ |
|
267 || defined (__sparc) || defined (__sgi) |
|
268 #include <alloca.h> |
|
269 \endverbatim |
|
270 |
|
271 with |
|
272 |
|
273 \verbatim |
|
274 #else /* not GNU C. */ |
|
275 #if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \ |
|
276 || defined (__sparc) || defined (__sgi) || defined (__osf__) |
|
277 #include <alloca.h> |
|
278 \endverbatim |
|
279 |
|
280 Alternatively, one could fix the problem at the bison side. |
|
281 Here is patch for bison.simple (provided by Andre Johansen): |
|
282 |
|
283 \verbatim |
|
284 --- bison.simple~ Tue Nov 18 11:45:53 1997 |
|
285 +++ bison.simple Mon Jan 26 15:10:26 1998 |
|
286 @@ -27,7 +27,7 @@ |
|
287 #ifdef __GNUC__ |
|
288 #define alloca __builtin_alloca |
|
289 #else /* not GNU C. */ |
|
290 -#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \ |
|
291 || defined (__sparc) || defined (__sgi) |
|
292 +#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \ |
|
293 || defined (__sparc) || defined (__sgi) || defined (__alpha) |
|
294 #include <alloca.h> |
|
295 #else /* not sparc */ |
|
296 #if defined (MSDOS) && !defined (__TURBOC__) |
|
297 \endverbatim |
|
298 |
|
299 The generated scanner.cpp that comes with doxygen is build with this |
|
300 patch applied. |
|
301 |
|
302 <b>Sun compiler problems</b> |
|
303 |
|
304 It appears that doxygen doesn't work properly if it is compiled |
|
305 with Sun's C++ WorkShop 6 Compiler. I cannot verify this myself as I do |
|
306 not have access to a Solaris machine with this compiler. With GNU compiler |
|
307 it does work and installing Sun patch 111679-13 has also been reported |
|
308 as a way to fix the problem. |
|
309 |
|
310 when configuring with <code>--static</code> I got: |
|
311 |
|
312 \verbatim |
|
313 Undefined first referenced |
|
314 symbol in file |
|
315 dlclose /usr/lib/libc.a(nss_deffinder.o) |
|
316 dlsym /usr/lib/libc.a(nss_deffinder.o) |
|
317 dlopen /usr/lib/libc.a(nss_deffinder.o) |
|
318 \endverbatim |
|
319 |
|
320 Manually adding <code>-Bdynamic</code> after the target rule in |
|
321 <code>Makefile.doxygen</code> and <code>Makefile.doxytag</code> |
|
322 will fix this: |
|
323 |
|
324 \verbatim |
|
325 $(TARGET): $(OBJECTS) $(OBJMOC) |
|
326 $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS) -Bdynamic |
|
327 \endverbatim |
|
328 |
|
329 <b>GCC compiler problems</b> |
|
330 |
|
331 Older versions of the GNU compiler have problems with constant strings |
|
332 containing characters with character codes larger than 127. Therefore |
|
333 the compiler will fail to compile some of the translator_xx.h files. |
|
334 A workaround, if you are planning to use the English translation only, |
|
335 is to configure doxygen with the <code>--english-only</code> option. |
|
336 |
|
337 On some platforms (such as OpenBSD) using some versions of gcc with |
|
338 -O2 can lead to eating all memory during the compilation of files |
|
339 such as config.cpp. As a workaround use --debug as a configure option |
|
340 or omit the -O2 for the particular files in the Makefile. |
|
341 |
|
342 Gcc versions before 2.95 may produce broken binaries due to bugs in |
|
343 these compilers. |
|
344 |
|
345 <b>Dot problems</b> |
|
346 |
|
347 Due to a change in the way image maps are generated, older versions |
|
348 of doxygen (\<=1.2.17) will not work correctly with newer versions of |
|
349 graphviz (\>=1.8.8). The effect of this incompatibility is that |
|
350 generated graphs in HTML are not properly clickable. For doxygen 1.3 |
|
351 it is recommended to use at least graphviz 1.8.10 or higher. |
|
352 For doxygen 1.4.7 or higher it is recommended to |
|
353 use GraphViz 2.8 or higher to avoid font issues. |
|
354 |
|
355 <b>Red Hat 9.0 problems</b> |
|
356 |
|
357 If you get the following error after running make |
|
358 \verbatim |
|
359 tmake error: qtools.pro:70: Syntax error |
|
360 \endverbatim |
|
361 then first type |
|
362 \verbatim |
|
363 export LANG= |
|
364 \endverbatim |
|
365 before running make. |
|
366 |
|
367 \section install_src_windows Compiling from source on Windows |
|
368 |
|
369 From version 1.5.0 onwards, build files are provided for Visual Studio 2005. |
|
370 Also the free (as in beer) "Express" version of Developer Studio can be used to |
|
371 compile doxygen. Alternatively, you can compile doxygen |
|
372 \ref install_src_unix "the Unix way" using |
|
373 <a href="http://en.wikipedia.org/wiki/Cygwin">Cygwin</a> |
|
374 or <a href="http://www.mingw.org/">MinGW</a>. |
|
375 |
|
376 Before you can compile doxygen you need to download and install the C++ compiler of |
|
377 Visual Studio. Since Microsoft apparently wants to lure everyone into using their |
|
378 .NET stuff, they made things somewhat difficult when you use the Express version. |
|
379 You need to |
|
380 <a href="http://msdn2.microsoft.com/en-gb/express/aa700755.aspx"> |
|
381 do some manual steps</a> in order to setup a proper working environment for building |
|
382 native win32 applications such as Doxygen. |
|
383 |
|
384 The next step is to install unxutils (see http://sourceforge.net/projects/unxutils). |
|
385 This packages contains the tools \c flex and \c bison which are needed during the |
|
386 compilation process if you use a CVS snapshot of doxygen (the official source releases |
|
387 come with pre-generated sources). |
|
388 Download the zip extract it to e.g. <code>c:\\tools\\unxutils</code>. |
|
389 |
|
390 Now you need to add/adjust the following environment variables |
|
391 (via Control Panel/System/Advanced/Environment Variables): |
|
392 - add <code>c:\\tools\\unxutils\\usr\\local\\wbin;</code> to the start of <code>PATH</code> |
|
393 - set <code>BISON_SIMPLE</code> to <code>c:\\tools\\unxutils\\usr\\local\\share\\bison.simple</code> |
|
394 |
|
395 Download doxygen's source tarball and put it somewhere (e.g use <code>c:\\tools</code>) |
|
396 |
|
397 Now start a new command shell and type |
|
398 \verbatim |
|
399 cd c:\tools |
|
400 gunzip doxygen-x.y.z.src.tar.gz |
|
401 tar xvf doxygen-x.y.z.src.tar |
|
402 \endverbatim |
|
403 to unpack the sources. |
|
404 |
|
405 Now your environment is setup to build \c doxygen and \c doxytag. |
|
406 |
|
407 Inside the \c doxygen-x.y.z directory you will find a \c winbuild directory |
|
408 containing a \c Doxygen.sln file. Open this file in Visual Studio. |
|
409 You can now build the Release or Debug flavor of Doxygen and Doxytag by right-clicking |
|
410 the project in the solutions explorer, and selecting Build. |
|
411 |
|
412 Note that compiling Doxywizard currently requires Qt version 3 |
|
413 (see http://www.trolltech.com/products/qt/qt3). |
|
414 If you do not have a commercial license, you can build Doxywizard with the open |
|
415 source version (see http://qtwin.sourceforge.net/qt3-win32/compile-msvc-2005.php), |
|
416 but I have not tried this myself. |
|
417 |
|
418 Also read the next section for additional tools you may need to install to run |
|
419 doxygen with certain features enabled. |
|
420 |
|
421 <!-- |
|
422 |
|
423 Currently, I have only compiled doxygen for Windows using Microsoft's |
|
424 Visual C++ (). For other compilers you may need to edit the |
|
425 perl script in <code>wintools/make.pl</code> a bit. |
|
426 Let me know what you had to change if you got Doxygen working with another |
|
427 compiler. If you have Visual Studio you can also use the .dsw file found in |
|
428 the <code>wintools</code> directory. Note that this file is not maintained |
|
429 by me, so it might be outdated a little. |
|
430 |
|
431 If you have Visual C++ 6.0, and the source distribution, you can easily |
|
432 build doxygen using the project files in the \c wintools directory. If |
|
433 you want to build the CVS sources, or want to build from the command line, |
|
434 or with another compiler, you have to follow the steps below. |
|
435 |
|
436 Thomas Baust reported that if you have Visual Studio.NET (2003) then |
|
437 you should be aware that there is a problem with the _popen() and _pclose() |
|
438 implementation, which currently leaks handles, so if you build doxygen with |
|
439 it and use the INPUT_FILTER, you will run to risk of crashing Windows! |
|
440 The problem is reported to and confirmed by Microsoft so maybe it will |
|
441 fixed in the next service pack. |
|
442 |
|
443 Since Windows comes without all the nice tools that Unix users are |
|
444 used to, you'll need to install a number of these tools before you can compile |
|
445 doxygen for Windows from the command-line. |
|
446 |
|
447 Here is what is required: |
|
448 <ul> |
|
449 <li>An unzip/untar tool like WinZip to unpack the tar source distribution. |
|
450 This can be found at http://www.winzip.com/ |
|
451 |
|
452 The good, tested, and free alternative is the <code>tar</code> utility |
|
453 supplied with <a href="http://sourceware.cygnus.com/cygwin/">cygwin |
|
454 tools</a>. Anyway, the cygwin's flex, bison, and sed are also |
|
455 recommended below. |
|
456 |
|
457 <li>Microsoft Visual C++ (I only tested with version 6.0). |
|
458 Use the <code>vcvars32.bat</code> batch file to set the environment |
|
459 variables (if you did not select to do this automatically during |
|
460 installation). |
|
461 |
|
462 Borland C++ or MINGW (see http://www.mingw.org/) are also supported. |
|
463 |
|
464 <li>Perl 5.0 or higher for Windows. This can be downloaded from: |
|
465 http://www.ActiveState.com/Products/ActivePerl/ |
|
466 |
|
467 <li>The GNU tools flex, bison, and sed. |
|
468 To get these working on Windows you should install the |
|
469 <a href="http://sources.redhat.com/cygwin/">cygwin tools</a> |
|
470 \latexonly(see {\tt http://sources.redhat.com/cygwin/})\endlatexonly |
|
471 |
|
472 Alternatively, you can also choose to |
|
473 download only a <a href="http://www.doxygen.org/dl/cygwin_tools.zip">small subset</a> |
|
474 \latexonly(see {\tt http://www.doxygen.org/dl/cygwin\_tools.zip})\endlatexonly |
|
475 of the cygwin tools that I put together just to compile doxygen. |
|
476 |
|
477 As a third alternative one could use the GNUWin32 tools that can be |
|
478 found at http://gnuwin32.sourceforge.net/ |
|
479 |
|
480 Make sure the <code>BISON_SIMPLE</code> environment variable points to the |
|
481 location where the files <code>bison.simple</code> and |
|
482 is located. For instance if these file is in |
|
483 <code>c:\\tools\\cygwin\\usr\\share</code> then BISON_SIMPLE should |
|
484 be set to <code>c:/tools/cygwin/usr/share/bison.simple</code> |
|
485 |
|
486 Also make sure the tools are available from a dos box, by adding |
|
487 the directory they are in to the search path. |
|
488 |
|
489 For those of you who are very new to cygwin (if you are going to |
|
490 install it from scratch), you should notice that there is an |
|
491 archive file <code>bootstrap.zip</code> which also contains the |
|
492 <code>tar</code> utility (<code>tar.exe</code>), <code>gzip</code> |
|
493 utilities, and the <code>cygwin1.dll</code> core. This also means |
|
494 that you have the <code>tar</code> in hands from the start. It |
|
495 can be used to unpack the tar source distribution instead of |
|
496 using WinZip -- as mentioned at the beginning of this list of |
|
497 steps. |
|
498 |
|
499 <li>From Doxygen-1.2.2-20001015 onwards, the distribution includes the part |
|
500 of Qt-2.x.y that is needed for to compile doxygen and doxytag, |
|
501 The Windows specific part were also created. |
|
502 As a result doxygen can be compiled on systems without X11 or the |
|
503 commerical version of Qt. |
|
504 |
|
505 For doxywizard, a complete Qt library is |
|
506 still a requirement however. A commercial license to build |
|
507 doxywizard with the latest Qt library was kindly donated to me |
|
508 by the nice people at <a href="http://www.trolltech.com">Qt Software</a>. |
|
509 See doxygen download page for a link. |
|
510 |
|
511 <li>If you used WinZip to extract the tar archive it will (apparently) not |
|
512 create empty folders, so you have to add the folders |
|
513 <code>objects</code> and <code>bin</code> manually in the root of the |
|
514 distribution before compiling. |
|
515 |
|
516 </ul> |
|
517 |
|
518 |
|
519 Compilation is now done by performing the following steps: |
|
520 |
|
521 <ol> |
|
522 <li>Open a dos box. |
|
523 Make sure all tools (i.e. <code>nmake</code>, <code>latex</code>, |
|
524 <code>gswin32</code>, <code>dvips</code>, <code>sed</code>, |
|
525 <code>flex</code>, <code>bison</code>, <code>cl</code>, |
|
526 <code>rm</code>, and <code>perl</code>), are accessible from |
|
527 the command-line (add them to the PATH environment variable if |
|
528 needed). |
|
529 |
|
530 Notice: The use of LaTeX is optional and only needed for compilation |
|
531 of the documentation into PostScript or PDF. |
|
532 It is \e not needed for compiling the doxygen's binaries. |
|
533 |
|
534 <li>Go to the doxygen root dir and type: |
|
535 |
|
536 \verbatim |
|
537 make.bat msvc |
|
538 \endverbatim |
|
539 |
|
540 This should build the executables |
|
541 <code>doxygen.exe</code> and <code>doxytag.exe</code> |
|
542 using Microsoft's Visual C++ compiler |
|
543 (The compiler should not produce any serious warnings or errors). |
|
544 |
|
545 You can use also the <code>bcc</code> argument to build |
|
546 executables using the Borland C++ compiler, or |
|
547 <code>mingw</code> argument to compile using GNU gcc. |
|
548 |
|
549 <li>To build the examples, go to the <code>examples</code> subdirectory |
|
550 and type: |
|
551 |
|
552 \verbatim |
|
553 nmake |
|
554 \endverbatim |
|
555 |
|
556 <li>To generate the doxygen documentation, go to the <code>doc</code> |
|
557 subdirectory and type: |
|
558 |
|
559 \verbatim |
|
560 nmake |
|
561 \endverbatim |
|
562 |
|
563 The generated HTML docs are located in the <code>..\\html</code> |
|
564 subdirectory. |
|
565 |
|
566 The sources for LaTeX documentation are located in the <code>..\\latex</code> |
|
567 subdirectory. From those sources, the DVI, PostScript, and PDF |
|
568 documentation can be generated. |
|
569 </ol> |
|
570 |
|
571 --> |
|
572 |
|
573 \section install_bin_windows Installing the binaries on Windows |
|
574 |
|
575 Doxygen comes as a self-installing archive, so installation is extremely simple. |
|
576 Just follow the dialogs. |
|
577 |
|
578 After installation it is recommended to also download and install GraphViz |
|
579 (version 2.8 or better is highly recommended). Doxygen can use the \c dot tool |
|
580 of the GraphViz package to render nicer diagrams, see the |
|
581 \ref cfg_have_dot "HAVE_DOT" option in the configuration file. |
|
582 |
|
583 If you want to produce compressed HTML files (see \ref |
|
584 cfg_generate_htmlhelp "GENERATE_HTMLHELP") in the config file, then |
|
585 you need the Microsoft HTML help workshop. |
|
586 You can download it from |
|
587 <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html/vsconHH1Start.asp">Microsoft</a>. |
|
588 |
|
589 If you want to produce Qt Compressed Help files (see \ref |
|
590 cfg_qhg_location "QHG_LOCATION") in the config file, then |
|
591 you need qhelpgenerator which is part of Qt. |
|
592 You can download Qt from <a href="http://trolltech.com/downloads/">Qt Software Downloads</a>. |
|
593 |
|
594 In order to generate PDF output or use scientific formulas you will also need to |
|
595 install <a href="http://en.wikipedia.org/wiki/LaTeX">LaTeX</a> and |
|
596 <a href="http://en.wikipedia.org/wiki/Ghostscript">Ghostscript</a>. |
|
597 |
|
598 For LaTeX a number of distributions exists. Popular onces that should work with |
|
599 doxygen are <a href="http://www.miktex.org">MikTex</a> |
|
600 and <a href="http://www.xemtex.org">XemTex</a>. |
|
601 |
|
602 Ghostscript can be <a href="http://sourceforge.net/projects/ghostscript/">downloaded</a> |
|
603 from Sourceforge. |
|
604 |
|
605 After installing LaTeX and Ghostscript you'll need to make sure the tools |
|
606 latex.exe, pdflatex.exe, and gswin32c.exe are present in the search path of a |
|
607 command box. Follow <a href="http://www.computerhope.com/issues/ch000549.htm">these</a> |
|
608 instructions if you are unsure and run the commands from a command box to verify it works. |
|
609 |
|
610 <!-- |
|
611 There is no fancy installation procedure at the moment (if anyone can |
|
612 add it in a location independent way please let me know). |
|
613 |
|
614 To install doxygen, just copy the binaries from the <code>bin</code> directory |
|
615 to a location somewhere in the path. Alternatively, you can include |
|
616 the <code>bin</code> directory of the distribution to the path. |
|
617 |
|
618 There are a couple of tools you may want to install to use all of doxygen's |
|
619 features: |
|
620 |
|
621 <ul> |
|
622 <li>To generate LaTeX documentation or formulas in HTML you need the tools: |
|
623 <code>latex</code>, <code>dvips</code> and <code>gswin32</code>. |
|
624 To get these working under Windows |
|
625 install the fpTeX distribution. You can find more info at: |
|
626 http://www.fptex.org/ and download it from CTAN or one of its mirrors. |
|
627 In the Netherlands for example this would be: |
|
628 ftp://ftp.easynet.nl/mirror/CTAN/systems/win32/fptex/ |
|
629 |
|
630 Make sure the tools are available from a dos box, by adding the |
|
631 directory they are in to the search path. |
|
632 |
|
633 For your information, the LaTeX is freely available set of so |
|
634 called macros and styles on the top of the famous TeX program |
|
635 (by famous Donald Knuth) and the accompanied utilities (all |
|
636 available for free). It is used for high quality |
|
637 typesetting. The result -- in the form of so called |
|
638 <code>DVI</code> (DeVice Independent) file -- can be printed or |
|
639 displayed on various devices preserving exactly the same look up |
|
640 to the capability of the device. The <code>dvips</code> allows you |
|
641 to convert the <code>dvi</code> to the high quality PostScript |
|
642 (i.e. PostScript that can be processed by utilities like |
|
643 <code>psnup</code>, <code>psbook</code>, <code>psselect</code>, |
|
644 and others). The derived version of TeX (the pdfTeX) can be used |
|
645 to produce PDF output instead of DVI, or the PDF can be produced |
|
646 from PostScript using the utility <code>ps2pdf</code>. |
|
647 |
|
648 If you want to use MikTeX then you need to select at least the |
|
649 medium size installation. For really old versions of MikTex or minimal |
|
650 installations, you may need to download the fancyhdr package separately. |
|
651 You can find it in the |
|
652 <a href="ftp://ftp.tex.ac.uk/tex-archive/macros/latex/contrib/supported/fancyhdr/"> |
|
653 contrib/supported</a> directory of the tex archives. |
|
654 |
|
655 <li>If you want to generate compressed HTML help |
|
656 (see \ref cfg_generate_htmlhelp "GENERATE_HTMLHELP") in the |
|
657 config file, then you need the Microsoft HTML help workshop. |
|
658 You can download it from |
|
659 <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html/vsconHH1Start.asp">Microsoft</a>. |
|
660 |
|
661 <li>If you want to produce Qt Compressed Help files (see \ref |
|
662 cfg_qhelgenerator_loc "QHG_LOCATION") in the config file, |
|
663 then you need qhelpgenerator which is part of Qt. |
|
664 You can download Qt from |
|
665 <a href="http://trolltech.com/downloads/">Qt Software Downloads</a>. |
|
666 |
|
667 <li><a href="http://www.graphviz.org/"> |
|
668 the Graph visualization toolkit version 1.8.10</a><br> |
|
669 \latexonly(see {\tt http://www.graphviz.org/})\endlatexonly. |
|
670 Needed for the include dependency graphs, the graphical inheritance graphs, |
|
671 and the collaboration graphs. |
|
672 </ul> |
|
673 |
|
674 --> |
|
675 |
|
676 \section build_tools Tools used to develop doxygen |
|
677 |
|
678 Doxygen was developed and tested under Linux & MacOSX using the following |
|
679 open-source tools: |
|
680 <ul> |
|
681 <li>GCC version 3.3.6 (Linux) and 4.0.1 (MacOSX) |
|
682 <li>GNU flex version 2.5.33 (Linux) and 2.5.4 (MacOSX) |
|
683 <li>GNU bison version 1.75 |
|
684 <li>GNU make version 3.80 |
|
685 <li>Perl version 5.8.1 |
|
686 <li>VIM version 6.2 |
|
687 <li>Firefox 1.5 |
|
688 <li>Trolltech's tmake version 1.3 (included in the distribution) |
|
689 <li>teTeX version 2.0.2 |
|
690 <li>CVS 1.12.12 |
|
691 </ul> |
|
692 |
|
693 \htmlonly |
|
694 Go to the <a href="starting.html">next</a> section or return to the |
|
695 <a href="index.html">index</a>. |
|
696 \endhtmlonly |
|
697 |
|
698 */ |
|
699 |