Installation Instructions


Uncompress and extract the contents of the installation file. For example: 

% tar -xvzf Understand-6.4.1140-Linux-64bit.tgz


 This will extract Understand. The executable is located in the bin directory. 

% cd scitools/bin/linux64
% ./understand


Supported Distributions

Understand 6.4  is built on Qt 6.5, these are the platforms that Qt Supports.

DistributionArchitectureCompiler
Red Hat 8.4x86_64GCC 10 (toolset)
Red Hat 9.0x86_64GCC 11
openSUSE 15.4x86_64GCC 9
SUSE Linux Enterprise Server 15 SP4x86_64GCC 10
Ubuntu 20.04x86_64GCC as provided by Canonical, GCC 11.x


Additional Libraries

These additional libraries may need to be installed depending on your distribution:

  • libxcb-xinerama0 
  • libxkbcommon-x11-0
  • openssl-1.1.1n
  • libxcb-shape0 ( Ubuntu 22.04 only )
  • libxcb-cursor0


Linux systems that come configured with Wayland as the default display server need these libraries as well

  • libxcb-util1 
  • libxcb-icccm4 ( On RHEL/CentOS libxcb-icccm is in xcb-util-wm )
  • libxcb-image0 
  • libxcb1 
  • libxcb-keysyms1 
  • libxcb-render-util0


Additional Dependencies

We have has users report that these additional dependencies were required:

  • Curl
  • ca-certificates


RHEL/Rocky 8.6

When using RHEL/Rocky 8.6 or newer, Understand requires these libraries to be installed using sudo yum:

  • xcb-util-wm
  • xcb-util-image
  • xcb-util-keysyms
  • xcb-util-renderutil
  • xcb-util-cursor *


* The xcb-util-cursor is not available in the standard repositories, but the RPM file can be downloaded here.


If you are using RHEL/Rocky 8, it does look like pkgs.org has stop hosing the RPM for Rocky 8. I don't know if the Cursor RPM for Rocky 9 is backwards compatible, but you can find a x86-64 version for Rocky 8 at the bottom of this article.


Understand still wont start

If you have any issues with Understand after installing your distributions libraries, launch Understand with the QT debug plugins environment variable set:

QT_DEBUG_PLUGINS=1 ./understand

Output from this command should let you know which packages are missing that Understand needs.


Add to PATH (Optional)


The PATH variable should be updated for each user, either in a
system-specific location or individually by each user. Add the appropriate bin directory to the path e.g.:

 % export PATH=$PATH:/home/myname/scitools/bin/linux64


 Add STIHOME variable for C API use (Optional)


If you’re planning on using the C API, add the STIHOME variable to your environment as well. It should point to the directory where Understand is installed. e.g: 

% export STIHOME=/home/myname/scitools

 

Desktop Shortcut (Optional)


The easiest way to create a desktop shortcut to Understand is via a .desktop file saved to ~/.local/share/applications. For example:


understand.desktop

[Desktop Entry]
Name=Understand
Exec=/home/myname/scitools/bin/linux64/understand
Icon=/home/myname/scitools/bin/linux64/understand_64.png
Type=Application
Terminal=false
Comment=Analyze it, measure it, visualize it, maintain it - Understand it
GenericName=Static analysis tool
Categories=Development;IDE;


Dark Theme ( Optional )


Understand reads the current them of the OS and applies it to Understand. If Understand is already open when changing to dark theme, restart Understand to have the theme applied.


We've had reports of users on Ubuntu 22 needing to set the environment variable GTK_THEME before certain themes will work.