Installing a GUI for EGSnrc Usercodes

A previous installation of EGSnrc was based around a command-line option. There is also a GUI interface for EGSnrc usercodes which is quite trivial to install and run.

Ensure that your environment variables for EGSnrc are loaded (e.g., module load egs). For example

set	HEN_HOUSE	/usr/local/EGSnrc/$version/
set	my_machine	x86_64-unknown-linux-gnu-pgf77
setenv  EGS_HOME	/home/$USER/egsnrc/
setenv	EGS_CONFIG	$HEN_HOUSE/specs/x86_64-unknown-linux-gnu-pgf77.conf
setenv	HEN_HOUSE	$HEN_HOUSE/
setenv	my_machine	$my_machine

There are plenty of others as well, but this will do for the example.

Go to the $HENHOUSE (e.g., /usr/local/EGSnrc/v4/gui/egs_inprz) and ensure you have QT installed (echo $QTDIR). If so, you're ready to simply run the short make file.

Login with a user account with X-forwarding available (e.g., ssh -X username@domain), start egsgui and then then egs_inprz.
e.g.,

[lev@tango ~]$ module load egs
[lev@tango ~]$ egsgui
[1] 9349
[lev@tango ~]$ egs_inprz

A nice graphic window with then appear on your desktop a-waiting your usercodes.

Another Discovery!

In the original install for EGSnrc, the install script was, not surprisingly, run as root as this is an install for a cluster. However in the install_script, around 90% complete, and after the basic install is completed and noted as such, are the lines:

if test "x$USER" = xroot; then
    exit 0
fi

Yes, the script just exits, incomplete, without telling you or providing any warnings. Note that it does complete the basic install, and recommends the running of the end-user install script, and making modifications to .bashrc files etc, so it gives all the impressions that it's actually done.

Nice :/

So with an existing install, one should logon, as root, install the environment variables module load egs, go into the gui directory of the HEN_HOUSE (cd /usr/local/EGSnrc/v4/gui) and run make there. That will install both egs_gui and egs_inprz with X-forwarding.