-
Notifications
You must be signed in to change notification settings - Fork 56
Building Doxygen
Below versions of Doxygen are available in respective distributions at the time of creation of these build instructions:
- RHEL (7.6, 7.7, 7.8) has
1.8.5
- RHEL (8.1,8.2) has
1.8.14
- SLES 12 SP5 has
1.8.6
- SLES (15 SP1, 15 SP2) has
1.8.14
- Ubuntu 18.04 has
1.8.13
- Ubuntu 20.04 has
1.8.17
The instructions provided below specify the steps to build Doxygen version 1.8.20 on Linux on IBM Z for
- RHEL (7.6, 7.7, 7.8, 8.1, 8.2)
- SLES (12 SP5, 15 SP1, 15 SP2)
- Ubuntu (18.04, 20.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.
export SOURCE_ROOT=/<source_root>/
-
RHEL (7.6, 7.7, 7.8)
sudo subscription-manager repos --enable=rhel-7-server-for-system-z-devtools-rpms sudo yum install -y git flex bison texlive-bibtex-bin make perl-Test-Simple.noarch openssl wget tar cpan qt-devel ghostscript texlive unzip texlive-epstopdf.noarch texlive.s390x devtoolset-7 # Enable GCC 7 - The changes are not persistent and this command will need to be re-run every time a new terminal session is started. sudo scl enable devtoolset-7 bash # Install cmake 3.x cd $SOURCE_ROOT 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 export PATH=$PATH:/usr/local/bin
-
RHEL (8.1,8.2)
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 SP5
sudo zypper install -y git flex bison gcc8 gcc8-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
Update the symlinks
/usr/bin/g++
and/usr/bin/c++
so they are pointing to/usr/bin/g++-8
. -
SLES 15 SP1
sudo zypper install -y git 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 python3
-
SLES 15 SP2
sudo zypper install -y git gcc-locale gcc7-locale glibc-locale libstdc++6-locale flex bison gcc gcc-c++ python3-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 python3
-
Ubuntu 18.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
-
Ubuntu 20.04
sudo apt-get update sudo apt-get install -y git cmake python flex bison qt5-default build-essential texlive libc6 libclang1 libgcc1 libstdc++6 doxygen-doc doxygen-gui doxygen-latex graphviz libxml2-utils
cd $SOURCE_ROOT
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).
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 SP5
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)
sudo cp *.sty /usr/share/texmf/tex/latex/
sudo mktexlsr
cd $SOURCE_ROOT
git clone git://github.com/doxygen/doxygen.git
cd doxygen
git checkout Release_1_8_20
cd $SOURCE_ROOT/doxygen
mkdir build
cd build
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.20.pdf.zip unzip doxygen_manual-1.8.20.pdf.zip mkdir -p latex mv doxygen_manual-1.8.20.pdf latex/doxygen_manual.pdf sudo make install
cd $SOURCE_ROOT/doxygen/build
make tests
Note:
- For SLES (15 SP1, 15 SP2) set LANG="en_US.utf-8".
The information provided in this article is accurate at the time of writing, but on-going development in the open-source projects involved may make the information incorrect or obsolete. Please open issue or contact us on IBM Z Community if you have any questions or feedback.