Doxygen latest release v1.8.3.1 - last update Sat Aug 24 2014

インストール

まず、最新のディストリビューションをお持ちでなければ、 ダウンロードのページ へ行って、取得してください。

Unix でのソースからのコンパイル

ソース・ディストリビューションをダウンロードしたのであれば、 実行可能ファイルをビルドするには、少なくとも以下が必要となります。

  • GNU ツール flex、bison および GNU make、strip
  • 自分のプラットフォームに応じた Makefile を生成するために perl
  • configureスクリプトは、Unixの標準ツール sed, date, find, uname, mv, cp, cat , echo, tr, cd, rmなどが使えることを前提にしています。

Doxygen の機能を完全に発揮させるには、以下のツールを追加でインストールして ください。

  • Qt Software の GUI ツールキット Qt version 4.3 以上。 これは GUI フロントエンド doxywizard のビルドに必要です。
  • $\mbox{\LaTeX}$ ディストリビューション: 例えば teTeX 1.0 これは LaTeX、PostScript、PDF 出力の生成に必要です。
  • Graphviz ver.1.8.10 以上
    インクルード依存図、グラフィカルな継承図、およびコラボレーション図のために必要です。
    graphviz を自分でコンパイルするのであれば、フリータイプ・サポート(フリータイプ ・ライブラリとヘッダーファイルが必要)をインクルードしてください。
    さもなければ、グラフに適切なテキストラベルが表示されません。
  • 公式を入れる、あるいはpdflatexを使わない場合は、ghostscript インタープリタが 必要です。
    www.ghostscript.com にあります。
  • Doxygen自体のドキュメントを生成するには、Pythonが必要です。 www.python.org にあります。

コンパイルは、現在、以下のステップを実行することによって行います。

  1. アーカイブを解凍していなければ、解凍します。

    gunzip doxygen-$VERSION.src.tar.gz    # アーカイブを展開する
    tar xf doxygen-$VERSION.src.tar       # ファイルを取り出す
    

  2. configure スクリプトを実行します。

    sh ./configure
    

    このスクリプトによって、使用中のプラットフォーム、make ツール(GNU make 必須 )、perl インタプリタを検出し、報告します。

    プラットフォームの自動検出、実行可能なコンパイラの設定を上書きするには、 次のようにします。

    configure --platform platform-type
    

    可能なプラットフォームのオプションのリストは、PLATFORMSファイル を参照してください。

    Qt-4.3.x 以上がインストールされ、GUI フロントエンドをビルドするのであれば、 –with-doxywizard オプションを付けて configure スクリプトを 実行してください。

    configure --with-doxywizard
    

    他のコンフィギュレーション・オプションの概略を知るには、

    configure --help
    

    を使います。

  3. make を実行して、プログラムをコンパイルします。

    make
    

    コンパイルが実行され、問題がなければディストリビューションの bin ディレクトリにバイナリ (doxygen および doxytag) ができます。

  4. オプション: ユーザーマニュアルを生成します。

    make docs
    

    HTMLドキュメントを生成させます。 ディストリビューションの HTML ディレクトリ に、html ドキュメントが出力 されます。(HTML ブラウザで html ディレクトリのファイル index.html を開いてください)。 これには、pythonインタープリターが必要です。

  5. オプション: マニュアルの PDF 版を生成します (これには pdflatexmakeindex、および egrep が必要です)。

    make pdf
    

    PDF マニュアル doxygen_manual.pdf が、 ディストリビューションの latex ディレクトリに出力されます。 Acrobat Reader を使って閲覧し、印刷してください。

Unix でのバイナリのインストール

ソースコードのコンパイルの後、make install を行って Doxygen をインストールします。 Unix のバイナリ・ディストリビューションをダウンロードしたのであれば、 次のように実行してください。

./configure
make install

バイナリはディレクトリ <prefix>/bin にインストールされます。 <docdir>/doxygen にドキュメントとサンプルをインストールするには、 make install_docs を使用してください。

<prefix> はデフォルトでは /usr/local ですが、 configure スクリプトの –prefix によって変更できます。 デフォルトの <docdir> ディレクトリは <prefix>/share/doc/packagesですが、configure スクリプトの –docdir によって変更できます。

他に、bin ディレクトリから、直接自分の好きなパスの通った binディレクトリに、手作業でコピーすることもできます。 Doxygen を使うには、これで十分です。

メモ: この方法では、GNUのinstall ツールが必要です (coreutils パッケージの一部)。 他のinstallツールではバイナリを間違ったディレクトリに入れてしまうことがあります!

RPM または DEP パッケージがあれば、これらのパッケージのために必要な標準の インストール手続に従ってください。

Unix でコンパイルする上での既知の問題

Qt問題

Qtインクルード・ファイルとライブラリが、QTDIR が指すディレクトリのサブディレクトリでないシステムがあります。

対処方法: doxygen ディストリビューションのルートに移動し、以下を実行して ください。

mkdir qt
cd qt
ln -s ご自分のqtのlibディレクトリ lib
ln -s ご自分のqtのbinディレクトリ bin
export QTDIR=$PWD

csh ライクなシェルの場合、上記の export コマンドの代わりに setenv QTDIR $PWD を使用してください。

ここで、上の説明のように doxygen をインストールしてください。

Bison 問題

bison のバージョン 1.31 から 1.34 までは、以下のようなコンパイル・エラーを結果 として生じる「バグ」を含んでいます。

ce_parse.cpp:348: member `class CPPValue yyalloc::yyvs' with constructor not allowed in union

この問題はバージョン 1.35 (1.31 以前のバージョンも動きます) で解決されました。

Latex 問題

ファイル a4wide.sty がないディストリビューションがあります。もし該当するディストリビューションなら、設定ファイルでペーパータイプ(設定ファイルの ref cfg_paper_type "PAPER_TYPE" タグ)を選んでください。

HP-UX & Digital Unix 問題

HP-UX で aCC を使ってコンパイルすると、以下のエラーが発生するのであれば、

/opt/aCC/lbin/ld: Unsatisfied symbols:
alloca (code)

(Anke Selig によれば) ce_parse.cpp を次のように編集してください。

extern "C" {
void *alloca (unsigned int);
};

#include <alloca.h>  

に置き換えてください。

これで解決しないのであれば、ce_parse.cpp を削除して、 bison にそれを再ビルドさせてください (作者の場合はこれで動きました)。

Digital Unix でコンパイルしているのであれば、同じ問題は、(Barnard Schmallhof に よると) ce_parse.cpp の

#else /* not GNU C.  */
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
|| defined (__sparc) || defined (__sgi)
#include <alloca.h>

#else /* not GNU C.  */
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
|| defined (__sparc) || defined (__sgi) || defined (__osf__)
#include <alloca.h>

に置き換えることで解決できるでしょう。

他に、bison 側での解決方法もあります。 以下に bison.simple のためのパッチがあります (Andre Johansen から提供)。

--- bison.simple~       Tue Nov 18 11:45:53 1997
+++ bison.simple        Mon Jan 26 15:10:26 1998
@@ -27,7 +27,7 @@
 #ifdef __GNUC__
 #define alloca __builtin_alloca
 #else /* not GNU C.  */
-#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
     || defined (__sparc) || defined (__sgi)
+#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) \
     || defined (__sparc) || defined (__sgi) || defined (__alpha)
 #include <alloca.h>
 #else /* not sparc */
 #if defined (MSDOS) && !defined (__TURBOC__)

Doxygenに含まれるscanner.cpp は、このパッチを適用して生成しました。

Sun コンパイラ問題

Sun の C++ Workshop 6 Compiler によってコンパイルした場合、Doxygen は適切に動作 しないようです。 作者にはこのコンパイラがあるSolaris環境がないため、現象確認できません。 GNUコンパイラを使えば解決します。また、Sun patch 111679-13でも解決できると報告 されています。

--static を付けて configure を実行すると、

Undefined                       first referenced
 symbol                             in file
dlclose                             /usr/lib/libc.a(nss_deffinder.o)
dlsym                               /usr/lib/libc.a(nss_deffinder.o)
dlopen                              /usr/lib/libc.a(nss_deffinder.o)

となります。

Makefile.doxygen の TARGETルールの後ろに -Bdynamic を手で追加してやれば、この問題は解決します。

$(TARGET): $(OBJECTS) $(OBJMOC) 
        $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS) -Bdynamic

GCC コンパイラ問題

GNU コンパイラの古いバージョンは、127 より大きい文字コードの文字を含む文字列定数 について関する問題があります。 従って、translator_xx.h ファイルのうちのいくつかはコンパイルで失敗します。 英訳だけを使うつもりであれば、–english-only オプションを付けて configureしてください。

OpenBSD などのプラットフォームでgccに-O2オプションを付けてコンパイルすると、 config.cpp などのファイルをコンパイルする間にメモリーを使い切ってしまう可能性が あります。 configure オプションとして –debug を使うか、Makefile内で特定のファイルについて -O2 を省略してください。

これらコンパイラのバグのため、バージョン2.95より前のgccでは破損したバイナリが 出来上がることがあります。

Dot 問題

イメージマップの生成方法が変更になったため、Doxygen の1.2.17以前のバージョンでは 、graphviz の1.8.8以降のバージョンで正しく動作しません。 この非互換性の結果、HTML 内に生成されたグラフが適切にクリックできません。 doxygen 1.3 (訳注: 1.3 以降) では、少なくとも graphviz 1.8.10 以降を使う ことを推奨します。 Doxygen1.4.7以降でフォント問題を回避するには、GraphViz 2.8以上を推奨します。

Red Hat 9.0 問題

make の実行後に以下のエラーが発生したのであれば、

tmake error: qtools.pro:70: Syntax error

make を実行する前に、まず

export LANG=

を実行してください。

Windows でのソースからのコンパイル

バージョン1.7.0以降では、Visual Studio 2008用のビルドファイルが提供されています 。Developer StudioのExpressバージョンでもDoxygenをコンパイルできます。 他に、CygwinMinGWを使えば、Unix方式でコンパイルできます。

次に、bison, flex, tar(参照:http://gnuwin32.sourceforge.net/packages.html)を インストールします。doxygenのCVSスナップショットを使う場合は、コンパイルにこれら パッケージが必要です。(公開ソースリリースには、あらかじめ生成されたソースがつい ています)

doxygenのtarballをダウンロードし、どこか(c:\toolsなど)に 保存します。

そして、コマンドシェルを起動し、

cd c:\tools
tar zxvf doxygen-x.y.z.src.tar.gz

と入力し、ソースを解凍します。

以上で、doxygen をビルドする環境ができます。

doxygen-x.y.z フォルダの winbuild フォルダに Doxygen.sln があります。これを Visual Studio で開きます。 ソリューションエクスプローラで Doxygen か Doxytag プロジェクトを右クリックし、 Release か Debug かを指定して、ビルドを実行します。

Doxywizardをコンパイルするには、現在Qtバージョン4 (http://qt.nokia.com/products/platform/qt-for-windows)が必要です。

Doxygenの特定の機能を有効にするには、他にもインストールが必要なツールがあります 。次のセクションで説明します。

Windows でのバイナリのインストール

Doxygenは自己解凍形式で提供されていますので、インストールはきわめてシンプルです。ダイアログに従うだけです。

インストール後、GraphViz(バージョン2.20以上を強く推奨します)もダウンロード、 インストールします。Doxygenでは GraphVizパッケージの dotツールを使って図を 見栄えよくできます。設定ファイルの HAVE_DOTオプションを見てください。

HTML形式の圧縮ファイル(設定ファイルの GENERATE_HTMLHELPを参照)を生成するには、Microsoft HTML help workshopが必要です。 Microsoftからダウンロードして下さい。

Qt形式の圧縮ヘルプファイル(設定ファイルの QHG_LOCATION)を生成するには、Qtのqhelpgeneratorというジェネレータが必要です。Qt Software Downloadsからダウンロードして下さい。

PDF出力が必要な場合や、科学技術の公式を使う場合は、LaTeX 及び Ghostscript をインストールしてください。

LaTeXにはディストリビューションがいくつもあります。Doxygenと相性のよく人気なのはMikTexXemTex です。

Ghostscriptは Sourceforgeからダウンロードできます。

LaTeX と Ghostscriptをインストールしたら、latex.exe, pdflatex.exe, gswin32c.exeへのパスをコマンドの検索パスに通さなければなりません。確実に動作するか確かめるには、この手順に従ってください。

Doxygen の開発に使用したツール

Doxygen は Linux 及び MacOSX で、以下のオープンソース・ツールを使用して、開発 およびテストされました。

  • GCC version 3.3.6 (Linux) と 4.0.1 (MacOSX)
  • GNU flex version 2.5.33 (Linux) と 2.5.4 (MacOSX)
  • GNU bison version 1.75
  • GNU make version 3.80
  • Perl version 5.8.1
  • VIM version 6.2
  • Firefox 1.5
  • Trolltechの tmake version 1.3(ディストリビューションに含む)
  • teTeX version 2.0.2
  • CVS 1.12.12
のセクションに行く / インデックス に戻る

This page was last modified on Sat Aug 24 2014.
© 1997-2014 Dimitri van Heesch, first release 27 oct 1997.
© 2001 OKA Toshiyuki (Japanese translation).
© 2006-2014 TSUJI Takahiro (Japanese translation).
© 2006-2014 TAKAGI Nobuhisa (Japanese translation).