Manual installation for XrootD development

This is likely to need > 40GB of space for whole install and number of additional packages + tests etc.

 

yum-config-manager --disable nagios sudo yum update sudo yum groupinstall -y "Development Tools" sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo yum install -y cmake3 krb5-devel readline-devel fuse-devel libxml2-devel zlib-devel ncurses-devel libcurl-devel libuuid-devel voms-devel libmacaroons-devel json-c-devel python2-devel python3-devel openssl-devel selinux-policy-devel graphviz systemd-devel cppunit expect tcl fuse sudo yum install -y git vim screen rpm-build wget curl cat <<EOF > ceph.repo [ceph] name=Ceph packages for $basearch baseurl=https://download.ceph.com/rpm-nautilus/el7/x86_64 enabled=1 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc [ceph-noarch] name=Ceph noarch packages baseurl=https://download.ceph.com/rpm-nautilus/el7/noarch enabled=1 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc [ceph-source] name=Ceph source packages baseurl=https://download.ceph.com/rpm-nautilus/el7/SRPMS enabled=0 priority=2 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc EOF sudo cp ceph.repo /etc/yum.quattor.repos.d/ceph.repo sudo cp ceph.repo /etc/yum.repos.d/ceph.repo sudo rpm --import 'https://download.ceph.com/keys/release.asc' cat <<EOF > softwarecollections.repo # # Please see http://wiki.centos.org/SpecialInterestGroup/SCLo for more # information [softwarecollections] name=EL7 - SCLo rh baseurl=http://mirror.centos.org/centos/7/sclo/x86_64/rh/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo [softwarecollections-testing] name=EL7 - SCLo rh Testing baseurl=http://buildlogs.centos.org/centos/7/sclo/x86_64/rh/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo [softwarecollections-source] name=EL7 - SCLo rh Source baseurl=http://vault.centos.org/centos/7/sclo/Source/rh/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo EOF cat <<EOF > RPM-GPG-KEY-CentOS-SIG-SCLo -----BEGIN PGP PUBLIC KEY BLOCK----- Version: GnuPG v2.0.22 (GNU/Linux) mQENBFYM/AoBCADR9Q5cb+H5ndx+QkzNBQ88wcD+g112yvnHNlSiBMOnNEGHuKPJ tujZ+eWXP3K6ucJckT91WxfQ2fxPr9jQ0xpZytcHcZdTfn3vKL9+OwR0npp+qmcz rK8/EzVz/SWSgBQ5xT/HUvaeoVAbzBHSng0r2njnBAqABKAoTxgyRGKSCWduKD32 7PF2ZpqeDFFhd99Ykt6ar8SlV8ToqH6F7An0ILeejINVbHUxd6+wsbpcOwQ4mGAa /CPXeqqLGj62ASBv36xQr34hlN/9zQMViaKkacl8zkuvwhuHf4b4VlGVCe6VILpQ 8ytKMV/lcg7YpMfRq4KVWBjCwkvk6zg6KxaHABEBAAG0aENlbnRPUyBTb2Z0d2Fy ZUNvbGxlY3Rpb25zIFNJRyAoaHR0cHM6Ly93aWtpLmNlbnRvcy5vcmcvU3BlY2lh bEludGVyZXN0R3JvdXAvU0NMbykgPHNlY3VyaXR5QGNlbnRvcy5vcmc+iQE5BBMB AgAjBQJWDPwKAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQTrhOcfLu nVXNewgAg7RVclomjTY4w80XiztUuUaFlCHyR76KazdaGfx/8XckWH2GdQtwii+3 Tg7+PT2H0Xyuj1aod+jVTPXTPVUr+rEHAjuNDY+xyAJrNljoOHiz111zs9pk7PLX CPwKWQLnmrcKIi8v/51L79FFsUMvhClTBdLUQ51lkCwbcXQi+bOhPvZTVbRhjoB/ a9z0d8t65X16zEzE7fBhnVoj4xye/MPMbTH41Mv+FWVciBTuAepOLmgJ9oxODliv rgZa28IEWkvHQ8m9GLJ0y9mI6olh0cGFybnd5y4Ss1cMttlRGR4qthLhN2gHZpO9 2y4WgkeVXCj1BK1fzVrDMLPbuNNCZQ== =UtPD -----END PGP PUBLIC KEY BLOCK----- EOF cp RPM-GPG-KEY-CentOS-SIG-SCLo /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo cp softwarecollections.repo /etc/yum.quattor.repos.d/ cp softwarecollections.repo /etc/yum.repos.d/ yum-config-manager --enable softwarecollections sudo yum install -y librados-devel libradosstriper-devel libradospp-devel librados2 libradosstriper1 sudo yum install -y python3-rados python-rados #sudo yum install -y devtoolset-9 # might be good to try 9 sudo yum install -y devtoolset-7 cat <<EOF > xrootd.repo [xrootd-stable] name=XRootD Stable repository baseurl=https://xrootd.slac.stanford.edu/binaries/stable/slc/7/x86_64 http://xrootd.cern.ch/sw/repos/stable/slc/7/x86_64 gpgcheck=1 enabled=1 protect=0 gpgkey=http://xrootd.cern.ch/sw/releases/RPM-GPG-KEY.txt EOF cp xrootd.repo /etc/yum.quattor.repos.d/ cp xrootd.repo /etc/yum.repos.d/ yum install -y xrootd-5.5.0-1.el7 \ xrootd-libs-5.5.0-1.el7 \ xrootd-devel-5.5.0-1.el7 xerces-c \ xrootd-devel-5.5.0-1.el7 \ xrootd-server-libs-5.5.0-1.el7 \ xrootd-server-devel-5.5.0-1.el7 \ xrootd-private-devel-5.5.0-1.el7 \ xrootd-scitokens-5.5.0-1.el7 \ xrootd-client-devel-5.5.0-1.el7 \ xrootd-client-libs-5.5.0-1.el7 # might be missing some package? wget https://repo.opensciencegrid.org/osg/3.6/el7/development/x86_64/xrootd-cmstfc-1.5.2-6.osg36.el7.x86_64.rpm rpm -ivh xrootd-cmstfc-1.5.2-6.osg36.el7.x86_64.rpm mkdir -p ${HOME}/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS} # to run / configure git clone https://github.com/stfc/xrootd-ceph cd xrootd-ceph git checkout bufferedIO source /opt/rh/devtoolset-7/enable ### mode 1) # local testing: (set up xrootd configs, etc. ) mkdir build ; cd build cmake3 ../ make -j2 && cp -f src/libXrdCeph* /usr/lib64/. ## mode 2) RPMS (remember to commit changes) . ./makesrpm.sh rpm2cpio xrootd-*.src.rpm | cpio -imdv --no-absolute-filenames #edit the spec file #Name: xrootd-ceph-buffered #Version as needed #Release as Needed sudo yum-builddep xrootd-*.rpm cp xrootd-ceph.tar.gz ${HOME}/rpmbuild/SOURCES/xrootd-ceph.tar.gz rpmbuild -ba xrootd-ceph.spec sudo rpm -Uvh ${HOME}/rpmbuild/RPMS/*/*.rpm rpm -qa | grep xrootd