ROOT Version: master
Platform: f31
Compiler: f31 default
Hello all -
Has anyone had success sourcing a root built in singularity, not from binaries?
The build succeeds, and it can be used normally with singularity shell root.sif
, but running the entrypoint, or exec commands fail to source thisroot.sh, citing failure on line 168:
166 SOURCE=${BASH_ARGV[0]}
167 if [ "x$SOURCE" = "x" ]; then
168 SOURCE=${(%):-%N} # for zsh
169 fi
You can view this failure yourself by executing singularity build root.sif root.def
with this def:
Bootstrap: docker
From: fedora:31
%post
# Install ROOT
ROOT_DEPENDENCIES="gcc gcc-c++ git cmake3 python3 zlib-devel libX11-devel libXpm-devel libXft-devel libXext-devel openssl-devel freetype-devel libuuid-devel fuse-devel davix-devel libxml2-devel"
yum install -y $ROOT_DEPENDENCIES
yum -y clean all --enablerepo='*'
git clone --depth 1 https://github.com/root-project/root /opt/root_src
mkdir /opt/build /opt/root && cd /opt/build
cmake3 /opt/root_src -DCMAKE_INSTALL_PREFIX=/opt/root
make -j $(nproc)
make install
# Clean leftovers
rm -rf /opt/root_src /opt/build
%environment
source /opt/root/bin/thisroot.sh
the resulting run fails like so:
$ singularity run root.sif
source: /opt/root/bin/thisroot.sh:168:13: parameter expansion requires a literal