TWiki Legacy - CompilingXRootD (2020-12-07, GeorgePatargias)
Title
Minimum/easiest set of packages to compile XRootD with Ceph support:
Provide repository information for Ceph libraries (might not be configured by default):
cat /etc/yum.repos.d/ceph-el7-x86_64.repo
# File generated by NCM::Component::spma::yum. Do not edit
# Basic Yum repository file. See the man pages for
# NCM::Component::spma and yum.conf
# for more details.
[ceph-el7-x86_64]
name=ceph-el7-x86_64
baseurl= http://mirrors.gridpp.rl.ac.uk/current/ceph-el7-x86_64/RPMS.nautilus/
metadata_expire=7d
include=/etc/yum.repos.d/ceph-el7-x86_64.pkgs
enabled=1
gpgcheck=0
priority=40
skip_if_unavailable=0
cat /etc/yum.repos.d/ceph-el7-x86_64.pkgs
# Additional configuration for ceph-el7-x86_64 # Could create this as an empty file with 'touch'
cat /etc/yum.repos.d/ceph-el7-noarch.repo
# File generated by NCM::Component::spma::yum. Do not edit
# Basic Yum repository file. See the man pages for
# NCM::Component::spma and yum.conf
# for more details.
[ceph-el7-noarch]
name=ceph-el7-noarch
baseurl= http://mirrors.gridpp.rl.ac.uk/current/ceph-el7-noarch/RPMS.luminous/
metadata_expire=7d
include=/etc/yum.repos.d/ceph-el7-noarch.pkgs
enabled=1
gpgcheck=0
priority=40
skip_if_unavailable=0
cat /etc/yum.repos.d/ceph-el7-noarch.pkgs
# Additional configuration for ceph-el7-noarch # Could create this as an empty file with 'touch'
Install required packages
yum group install "Development Tools"
yum install git cmake
yum install zlib-devel openssl-devel librados2-devel libradosstriper-1devel
Obtain the source
We will clone from the Master branch in the XRootD Git Hub repo:
git clone https://github.com/xrootd/xrootd.git
cd xrootd; mkdir buildtop.d; cd buildtop.d
cmake .. -DCMAKE_INSTALL_PREFIX=/opt/xrootd -DENABLE_CEPH=TRUE -DBUILD_TESTS=TRUE
make
sudo -c make install
If compiling an older version (at least before 4.9, need to add the definition -DHAVE_DH_PADDED_FUNC=TRUE, otherwise you may see this error XRootDCompilationErrorDH _PADDED_FUNC.
Test it.