Difference between revisions of "Doxygen"

From CBLFS
Jump to navigationJump to search
(I added addtional configuration options and added a note about DESTDIR.)
 
(4 intermediate revisions by 3 users not shown)
Line 7: Line 7:
 
----
 
----
  
== Introduction to Doxygen ==
+
{{Package-Introduction|Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors) and to some extent PHP, C#, and D.|http://www.stack.nl/~dimitri/doxygen/}}
 
 
Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors) and to some extent PHP, C#, and D.
 
 
 
It can generate an on-line documentation browser (in HTML) and/or an off-line reference manual (in '''L<sup style="position:relative;top:0.25em">A</sup>T<sub><big>E</big></sub>X''') from a set of documented source files. There is also support for generating output in RTF (MS-Word), PostScript, hyperlinked PDF, compressed HTML, and Unix man pages. The documentation is extracted directly from the sources, which makes it much easier to keep the documentation consistent with the source code.
 
 
 
You can configure doxygen to extract the code structure from undocumented source files. This is very useful to quickly find your way in large source distributions. You can also visualize the relations between the various elements by means of include dependency graphs, inheritance diagrams, and collaboration diagrams, which are all generated automatically.
 
 
 
'''Project Home Page''': http://www.stack.nl/~dimitri/doxygen/
 
  
 
== Dependencies ==
 
== Dependencies ==
Line 26: Line 18:
 
* [[Graphviz]]
 
* [[Graphviz]]
  
== Note to DESTDIR Fans ==
+
== Configuration Information ==
  
Unfortunately, this package ignores DESTDIR. However, we ''can'' pervert to our purposes the variable that it uses for prefix. The installation commands thus become:
+
{|style="text-align: left;"
 
+
|-
make INSTALL=/usr<DESTDIR>
+
|''--english-only'': Include support for English only.
 
+
|-
and
+
|''--enable-langs list'': Include support for output languages listed in list. [default: nl,se,cz,fr,id,it,de,jp,je,es,fi,ru,hr,pl,pt,hu,kr,ke,ro,si,cn,no,br,dk,sk,ua,gr,tw,sr,ca,lt,za,ar,fa]
 
+
|-
make INSTALL=/usr<DESTDIR> \
+
|''--with-doxywizard'': If [[Qt3]] is installed, you can use this flag to cause Doxygen's GUI front-end to be built.
  DOCDIR=<DESTDIR>/usr/share/doc/doxygen \
+
|}
  install_docs
 
 
 
== Additional Configuration Options ==
 
 
 
''--english-only'': Include support for English only.
 
  
''--enable-langs list'': Include support for output languages listed in list. [default: nl,se,cz,fr,id,it,de,jp,je,es,fi,ru,hr,pl,pt,hu,kr,ke,ro,si,cn,no,br,dk,sk,ua,gr,tw,sr,ca,lt,za,ar,fa]
+
{{Note|Doxygen does not use ''DESTDIR''.  Doxygen does recognize the ''INSTALL'' variable that may be used in a manner similar to ''DESTDIR''. Using the ''INSTALL'' variable, the installation commands would become '''make INSTALL<nowiki>=<DESTDIR>/usr</nowiki>''' and '''make INSTALL<nowiki>=<DESTDIR>/usr DOCDIR=<DESTDIR>/usr/share/doc/doxygen install_docs</nowiki>'''.}}
 
 
''--with-doxywizard'': If Qt is installed, you can use this flag to cause Doxygen's GUI front-end to be built.
 
  
 
== Non-Multilib ==
 
== Non-Multilib ==
Line 50: Line 35:
 
Compile the package:
 
Compile the package:
  
rm src/unistd.h &&
 
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  make
 
  make
Line 61: Line 45:
  
 
  make install_docs
 
  make install_docs
 
=== Command Explanations ===
 
 
''rm src/unistd.h'': Flex-2.5.33 has a bug that makes it so that it uses src/unistd.h instead of the version installed on your system. To avoid this, we remove src/unistd.h. Since this fixes a problem with the building of Doxygen's GUI front-end, you don't really need to do this if you're not building the GUI front-end (by using the flag --with-doxywizard), but it doesn't hurt.
 
  
 
== Multilib ==
 
== Multilib ==
Line 73: Line 53:
 
Compile the package:
 
Compile the package:
  
rm src/unistd.h &&
 
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  make CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}"  
 
  make CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}"  
Line 89: Line 68:
 
Compile the package:
 
Compile the package:
  
rm src/unistd.h &&
 
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  make CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}"
 
  make CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}"
Line 105: Line 83:
 
Compile the package:
 
Compile the package:
  
rm src/unistd.h &&
 
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  ./configure --prefix /usr --docdir /usr/share/doc &&
 
  make CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}"
 
  make CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}"
Line 144: Line 121:
 
| is a GUI front-end for configuring and running '''doxygen'''.
 
| is a GUI front-end for configuring and running '''doxygen'''.
 
|}
 
|}
 +
 +
[[Category:Programming]]

Latest revision as of 16:41, 19 March 2009

Download Source: ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.7.3.src.tar.gz

Introduction to Doxygen

Doxygen is a documentation system for C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors) and to some extent PHP, C#, and D.

Project Homepage: http://www.stack.nl/~dimitri/doxygen/

Dependencies

Optional

Configuration Information

--english-only: Include support for English only.
--enable-langs list: Include support for output languages listed in list. [default: nl,se,cz,fr,id,it,de,jp,je,es,fi,ru,hr,pl,pt,hu,kr,ke,ro,si,cn,no,br,dk,sk,ua,gr,tw,sr,ca,lt,za,ar,fa]
--with-doxywizard: If Qt3 is installed, you can use this flag to cause Doxygen's GUI front-end to be built.
Caution.png

Note

Doxygen does not use DESTDIR. Doxygen does recognize the INSTALL variable that may be used in a manner similar to DESTDIR. Using the INSTALL variable, the installation commands would become make INSTALL=<DESTDIR>/usr and make INSTALL=<DESTDIR>/usr DOCDIR=<DESTDIR>/usr/share/doc/doxygen install_docs.

Non-Multilib

Compile the package:

./configure --prefix /usr --docdir /usr/share/doc &&
make

Install the package

make install

If you wish to generate and install the package documentation (note that man pages have already been installed), you must have Python, teTeX (for HTML docs) and Ghostscript (for PDF docs) installed, then issue the following command:

make install_docs

Multilib

This package does not provide any libraries so only one installation is needed.

32Bit

Compile the package:

./configure --prefix /usr --docdir /usr/share/doc &&
make CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" 

Install the package

make install

If you wish to generate and install the package documentation (note that man pages have already been installed), you must have Python, teTeX (for HTML docs) and Ghostscript (for PDF docs) installed, then issue the following command:

make install_docs

N32

Compile the package:

./configure --prefix /usr --docdir /usr/share/doc &&
make CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}"

Install the package

make install

If you wish to generate and install the package documentation (note that man pages have already been installed), you must have Python, teTeX (for HTML docs) and Ghostscript (for PDF docs) installed, then issue the following command:

make install_docs

64Bit

Compile the package:

./configure --prefix /usr --docdir /usr/share/doc &&
make CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}"

Install the package

make install

If you wish to generate and install the package documentation (note that man pages have already been installed), you must have Python, teTeX (for HTML docs) and Ghostscript (for PDF docs) installed, then issue the following command:

make install_docs

Contents

Installed Programs: doxygen, doxytag, and optionally, doxywizard
Installed Libraries: None
Installed Directories: /usr/share/doc/doxygen

Short Descriptions

doxygen is a command-line based utility used to generate template configuration files and then generate documentation from these templates. Use doxygen --help for an explanation of the command-line parameters.
doxytag is used to generate a tag file and/or a search index for a set of HTML files.
doxywizard is a GUI front-end for configuring and running doxygen.