Installing via YUM¶
We provide YUM repositories of the IPbus software (pre-built binaries + configuration files) for RedHat 7, 8 and 9, for AMD64 and ARM64 machines. We also have a YUM repository for RedHat 7 on ARMv7. These same repositories can also be used for equivalent RedHat-derivative operating systems, e.g. CentOS7, 8 and 9, Alma/Rocky 8 and 9. These YUM repositories should be used wherever possible. If you want to help on the development - then you should check the compile from source instructions.
If you already have a previous version of the IPbus suite (i.e. v2.0.0 to v2.7.9) installed on your computer, first uninstall this old version:
sudo yum groupremove uhal
Ensure that the EPEL YUM repository has been added, and is enabled. E.g. you can add this on RedHat/CentOS/Alma/Rocky 8 or 9 as follows:
dnf install epel-release
Download the appropriate YUM repo file, and copy to
/etc/yum.repos.d/, renaming toipbus-sw.repo:For RedHat/CentOS7: Two builds are available …
Compiler: GCC4. Dependencies: boost 1.53 and pugiXML 1.8 (from EPEL repos):
sudo curl https://ipbus.web.cern.ch/doc/user/html/_downloads/ipbus-sw.repo -o /etc/yum.repos.d/ipbus-sw.repo
Compiler: GCC8. Dependencies: boost 1.66 and pugiXML 1.9 (provided in the IPbus repo)):
sudo curl https://ipbus.web.cern.ch/doc/user/html/_downloads/ipbus-sw.centos7_gcc8.repo -o /etc/yum.repos.d/ipbus-sw.repo
For RedHat/CentOS/Alma/Rocky 8:
sudo curl https://ipbus.web.cern.ch/doc/user/html/_downloads/ipbus-sw.repo -o /etc/yum.repos.d/ipbus-sw.repo sudo yum-config-manager --enable powertools
For RedHat/Alma/Rocky 9:
sudo curl https://ipbus.web.cern.ch/doc/user/html/_downloads/ipbus-sw.repo -o /etc/yum.repos.d/ipbus-sw.repo
Install the software:
To just install uHAL:
sudo yum clean all sudo yum groupinstall uhal
To just install the ControlHub:
sudo yum clean all sudo yum groupinstall controlhub
To install both uHAL and the ControlHub:
sudo yum clean all sudo yum groupinstall uhal controlhub
The above
groupinstallcommands that include uHAL only install the Python bindings for the default Python version on that system, but we provide RPMs for all Python versions available from EPEL. To install the uHAL Python bindings for another Python version X.Y, runsudo yum install cactuscore-uhal-pythonXY- e.g. for Python 3.11, runsudo yum install cactuscore-uhal-python311.
Note: On CentOS7, the debug info for libraries and executables (used e.g. to show stack traces in
gdb) is packaged in a different set of RPMs, that belong to theuhal-debugYUM group. These RPMs can be installed on CentOS7 as follows:sudo yum groupinstall uhal-debug
N.B. The IPbus software RPMs install almost all of their files under /opt/cactus. So when running applications that use uHAL, you need to update your environment variables accordingly:
export LD_LIBRARY_PATH=/opt/cactus/lib:$LD_LIBRARY_PATH