Skip to content

Building Doxygen

aborkar-ibm edited this page Nov 27, 2019 · 55 revisions

Building Doxygen

Below versions of Doxygen are available in respective distributions at the time of creation of these build instructions:

  • RHEL 6.10 has 1.6.1
  • RHEL(7.5, 7.6, 7.7) have 1.8.5
  • RHEL 8.0 has 1.8.14
  • SLES 12 SP4 has 1.8.6
  • SLES (15, 15 SP1) have 1.8.14
  • Ubuntu 16.04 has 1.8.11
  • Ubuntu (18.04, 19.04) have 1.8.13

The instructions provided below specify the steps to build Doxygen version 1.8.16 on Linux on IBM Z for

  • RHEL (6.10, 7.5, 7.6, 7.7, 8.0)
  • SLES (12 SP4, 15, 15 SP1)
  • Ubuntu (16.04, 18.04, 19.04)

General Notes:

  • When following the steps below please use a standard permission user unless otherwise specified.

  • A directory /<source_root>/ will be referred to in these instructions, this is a temporary writable directory anywhere you'd like to place it.

Step 1: Building and installing Doxygen

1.1) Install dependencies

  • RHEL 6.10

    sudo yum install -y git flex gcc gcc-c++ texlive-latex.s390x make python-argparse.noarch openssl wget tar qt-devel-4.6.2-28.el6_5.s390x unzip
    # Install cmake 3.x
    wget https://cmake.org/files/v3.7/cmake-3.7.2.tar.gz
    tar xzf cmake-3.7.2.tar.gz
    cd cmake-3.7.2
    ./configure --prefix=/usr/local
    make && sudo make install
    
    # Install Bison 3.x
    wget http://ftp.gnu.org/gnu/bison/bison-3.3.2.tar.gz
        tar -zxvf bison-3.3.2.tar.gz
        cd bison-3.3.2
        ./configure --prefix=/usr/local
        make && sudo make install
        bison -V
    
  • RHEL (7.5, 7.6, 7.7)

    sudo yum install -y git flex bison gcc gcc-c++ texlive-bibtex-bin make perl-Test-Simple.noarch openssl wget tar cpan qt-devel latex ghostscript texlive unzip texlive-epstopdf.noarch texlive.s390x python-argparse.noarch
    # Install cmake 3.x
    wget https://cmake.org/files/v3.7/cmake-3.7.2.tar.gz
    tar xzf cmake-3.7.2.tar.gz
    cd cmake-3.7.2
    ./configure --prefix=/usr/local
    make && sudo make install
  • RHEL 8.0

    sudo yum install -y git flex bison gcc gcc-c++ texlive-bibtex-bin make perl-Test-Simple.noarch openssl wget tar cpan python3-qt5-devel.s390x doxygen-latex.s390x ghostscript texlive unzip texlive-epstopdf.noarch texlive.s390x python3-argh.noarch cmake unzip diffutils
  • SLES 12 SP4

    sudo zypper install -y git flex bison gcc gcc-c++ python-xml libxml2-tools libxml2-devel texlive-bibtex-bin make perl-Test-Simple.noarch  openssl wget tar libqt4-devel ghostscript texlive unzip graphviz perl perl-YAML zip texlive* cmake
  • SLES (15, 15 SP1)

    sudo zypper install -y gcc-locale  gcc7-locale glibc-locale libstdc++6-locale flex bison gcc gcc-c++ python-xml libxml2-tools libxml2-devel texlive-bibtex-bin make perl-Test-Simple.noarch  openssl wget tar libqt5-qttools-devel ghostscript texlive unzip graphviz perl perl-YAML zip texlive* cmake
  • Ubuntu 16.04

    sudo apt-get update
    sudo apt-get install -y git cmake python flex bison qt-sdk texlive libc6 libclang1-3.* libgcc1 libstdc++6 doxygen-doc doxygen-gui doxygen-latex graphviz libxml2-utils
  • Ubuntu (18.04, 19.04)

    sudo apt-get update
    sudo apt-get install -y git cmake python flex bison qt5-default build-essential texlive libc6 libclang1-3.* libgcc1 libstdc++6 doxygen-doc doxygen-gui doxygen-latex graphviz libxml2-utils

1.2) Create a working directory to use as a Doxygen installation workspace

export SOURCE_ROOT=/<source_root>/
mkdir -p $SOURCE_ROOT
cd $SOURCE_ROOT

1.3) Use CPAN to install Perl modules (Only for RHEL 7.X, RHEL 8 and SLES)

sudo cpan Test::More
sudo cpan File::Path

Note:

  • If CPAN has not previously been setup it asks setup/configuration questions before the requested Perl module is installed. The answers can be site specific, but as a guideline, it is generally OK to accept the defaults or suggestions offered.
  • If Perl fails to build, it may be because 'echo port 7 ' is commented out in the services file. Please check in the /etc/services file, that the following lines exist and are active (e.g. Not preceded by a # symbol to comment them out).

1.4) Install dependencies(latex) for make docs command: (for RHEL/SLES)

wget http://mirrors.ctan.org/macros/latex/contrib/multirow/multirow.dtx
wget http://mirrors.ctan.org/macros/latex/contrib/multirow/multirow.ins
wget http://mirrors.ctan.org/macros/latex/contrib/multirow/multirow.pdf
tex multirow.ins
  
wget  http://mirrors.ctan.org/macros/latex/contrib/import/import.sty 
wget http://mirrors.ctan.org/macros/latex/contrib/xtab/xtab.dtx
wget http://mirrors.ctan.org/macros/latex/contrib/xtab/xtab.ins 
wget http://mirrors.ctan.org/macros/latex/contrib/xtab/xtab.pdf 
latex xtab.ins 
  
wget http://mirrors.ctan.org/macros/latex/contrib/sectsty/sectsty.dtx
wget http://mirrors.ctan.org/macros/latex/contrib/sectsty/sectsty.ins 
wget http://mirrors.ctan.org/macros/latex/contrib/sectsty/sectsty.pdf 
latex sectsty.ins 
  
wget http://mirrors.ctan.org/macros/latex/contrib/tocloft/tocloft.dtx 
wget http://mirrors.ctan.org/macros/latex/contrib/tocloft/tocloft.ins 
wget http://mirrors.ctan.org/macros/latex/contrib/tocloft/tocloft.pdf 
latex tocloft.ins 
  
wget http://mirrors.ctan.org/macros/latex/contrib/appendix/appendix.dtx 
wget http://mirrors.ctan.org/macros/latex/contrib/appendix/appendix.ins 
wget http://mirrors.ctan.org/macros/latex/contrib/appendix/appendix.pdf 
latex appendix.ins 
  
wget http://mirrors.ctan.org/macros/latex/contrib/tabu/tabu.dtx 
wget http://mirrors.ctan.org/macros/latex/contrib/tabu/tabu.pdf 
wget http://mirrors.ctan.org/macros/latex/contrib/tabu/tabu.sty
  • Perform the following steps for SLES 12 SP4
wget http://mirrors.ctan.org/support/epstopdf/epstopdf.pl  
sudo mv epstopdf.pl /usr/local/bin/epstopdf  
chmod a+x /usr/local/bin/epstopdf
export PATH=/usr/local/bin:$PATH
  • The files are made available to latex by placing at specific location
sudo mkdir -p /usr/share/texmf/tex/latex/ (Only for RHEL 7.X and RHEL 8)
sudo cp *.sty /usr/share/texmf/tex/latex/  
sudo mktexlsr

1.5) Download source code

cd $SOURCE_ROOT
git clone git://github.com/doxygen/doxygen.git
cd doxygen
git checkout Release_1_8_16

1.6) Create a build directory

cd $SOURCE_ROOT/doxygen
mkdir build
cd build

1.7) Build and install

cd $SOURCE_ROOT/doxygen/build
cmake -G "Unix Makefiles" -Dbuild_doc=ON -Dbuild_wizard=YES ..
make 
  • For Ubuntu only

    make docs  
    sudo make install
  • For RHEL and and SLES only

    wget  http://doxygen.nl/files/doxygen_manual-1.8.16.pdf.zip
    unzip  doxygen_manual-1.8.16.pdf.zip
    mkdir -p latex
    mv doxygen_manual-1.8.16.pdf latex/doxygen_manual.pdf
    sudo make install

Step 2: Run the functional test suite (Optional)

cd $SOURCE_ROOT/doxygen/build
make tests

Note: For SLES (15, 15 SP1). set LANG="en_US.utf-8".

References:

https://github.com/doxygen/doxygen

Clone this wiki locally