[Halld-offline] Python-3-compatible building
Mark Ito
marki at jlab.org
Tue Jul 28 20:10:27 EDT 2020
Folks,
I have submitted five pull requests recently, one for each of the
following repositories:
hdds
halld_recon
halld_sim
hdgeant4
build_scripts
This set of changes is to allow us to build our software stack using
Python 3. Where necessary, the system checks the version number of the
"python" command and makes the appropriate changes. The system was
tested on RedHat Enterprise 7 (RHEL7), where the default python is
2.7.5, and on Fedora 32, where the default python is 3.8.3. The same
versions of the packages named above will build on both platforms
without modification. Fedora 32 was chosen because it is (a) the latest
version of Fedora and (b) because it is what I have running on my box at
home.
In addition, because Fedora 32 comes with GCC 10.1.1, there were
modifications made to be able to build with that compiler. These were
made by sensing the version of the compiler and thus did not break the
ability to build with GCC 4.8.5 (which comes with RHEL7/CentOS7).
Also, to do the testing with GCC 10.1.1, more modern versions of lapack
(3.9.0) and ROOT (6.18.04) were needed. The default versions have not
changed on our standard platforms, only the versions used in the Fedora
32 tests.
There is one important caveat. The RHEL7 build was tested successfully
with the b1pi test using both hdgeant and hdgeant4. On Fedora 32, the
b1pi test with hdgeant4 fails for unknown reasons. Despite this, I would
like to get these changes on the master branches to provide a base for
further testing, a base that will at least build successfully on a more
advanced distribution. In particular CentOS 8 uses Python 3 by default,
so many of these changes are needed to develop a CentOS-8-based
container system.
-- Mark
More information about the Halld-offline
mailing list