Building GUIs on Linux - nrc-cnrc/EGSnrc GitHub Wiki
If you wish to compile the Qt GUIs yourself, for example to make changes to egs_gui, egs_view, egs_inprz or egs_configure, it is necessary to install the Qt developer tools. The following are instructions to compile dynamically linked EGSnrc Qt graphical user interfaces on Linux. These instructions are meant for users that are well-acquainted with Linux terminal command and environment variables, and who can install software on their computer (otherwise, please seek support from your system administrator).
Note that qmake
uses its own compiler configuration, in $QTDIR/mkspecs
Qt5 Instructions
- Ensure you have installed and configured the EGSnrc on your system.
- Install the Qt5 development tools, e.g.,
qt5-default
andqt5-qmake
for Ubuntu or WSL. - Define the
QTDIR
environment variable as the path of the Qt5 directory, e.g.,export QTDIR=/usr/lib/qt5
on Ubuntu (check that theqmake
binary is indeed in the$QTDIR/bin/
directory). - Define the
QT_SELECT
environment variable to select Qt5 compilation:export QT_SELECT=qt5
. - Go to
$HEN_HOUSE/egs++/view
and issue themake clean; make
command. If compilers have changed, first issuemake realclean
.
To build all GUIs
- Go to
$HEN_HOUSE/gui
and issue the commandmake clean; make
to build all of egs_gui, egs_inprz and egs_configure. If compilers have changed, first issuemake realclean
in each of the three subdirectories. - If the compiler complains it cannot find the
zlib.h
file, install the package that provides this basic header. On Ubuntu, for example, issue the following command in a terminal:sudo apt-get install zlib1g-dev
.
To build individual GUIs
- Go to
$HEN_HOUSE/gui/egs_gui
and issue themake realclean; make
command. - Go to
$HEN_HOUSE/gui/egs_inprz
and issue themake realclean; make
command. - Go to
$HEN_HOUSE/gui/egs_configure
and issue themake realclean; make
command. - If the compiler complains it cannot find the
zlib.h
file, install the package that provides this basic header. On Ubuntu, for example, issue the following command in a terminal:sudo apt-get install zlib1g-dev
.
Qt4 Instructions
In the 2018 release of the master
branch, the GUIs are compatible with Qt4.
- Install the Qt4 development tools (
libqt4-dev
orlibqt4-devel
package in many distributions). - Define the
QTDIR
environment variable as the path to the Qt4 development directory on your system. For example, on CentOS issue the commandexport QTDIR=/usr/lib64/qt4
. On Ubuntu issueexport QTDIR=/usr/share/qt4
. - Go to
$HEN_HOUSE/egs++/view
and issue themake clean; make
command. If compilers have changed, first issuemake realclean
.
To build all GUIs
- Go to
$HEN_HOUSE/gui
and issue the commandmake clean; make
to build all of egs_gui, egs_inprz and egs_configure. If compilers have changed, first issuemake realclean
in each of the three subdirectories.
To build individual GUIs
- Go to
$HEN_HOUSE/gui/egs_gui
and issue themake realclean; make
command. - Go to
$HEN_HOUSE/gui/egs_inprz
and issue themake realclean; make
command. - Go to
$HEN_HOUSE/gui/egs_configure
and issue themake realclean; make
command.