Installing the iRODS Connector from source

It is no longer necessary to build the iRODS connector package from source, but these instructions may be useful for testing or building pre-release updates when prompted to do so by Globus Support.

Ensure the Globus Connect Server package repositories are enabled before continuing.

Install the build dependencies:

# install iRODS package repository
sudo rpm --import https://packages.irods.org/irods-signing-key.asc
curl -s https://packages.irods.org/renci-irods.yum.repo | sudo tee /etc/yum.repos.d/renci-irods.yum.repo
# install iRODS packages and build dependencies
sudo yum install \
    irods-devel irods-icommands 'irods-externals*' \
    git gcc-c++ \
    globus-connect-gridftp-server-devel globus-gridmap-callout-error-devel
# install iRODS package repository
curl -s https://packages.irods.org/irods-signing-key.asc | sudo apt-key add -
echo "deb [arch=amd64] https://packages.irods.org/apt/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/renci-irods.list
sudo apt-get update
# install iRODS packages and build dependencies
sudo apt-get install \
    irods-dev irods-icommands 'irods-externals*' \
    git dpkg-dev cdbs g++ \
    libglobus-gridftp-server-dev libglobus-gridmap-callout-error-dev

Clone the source repository into the current directory:

git clone https://github.com/irods/irods_client_globus_connector
cd irods_client_globus_connector

Create the installation directory:

sudo mkdir /opt/iRODS_DSI
export IRODS_DSI=/opt/iRODS_DSI

Set some environment variables that are used by the build process and the PATH so that the correct version of cmake will be found:

export PATH=/opt/irods-externals/cmake3.11.4-0/bin:$PATH
export GLOBUS_LOCATION=/usr
export IRODS_PATH=/usr
export DEST_LIB_DIR=$IRODS_DSI
export DEST_BIN_DIR=$IRODS_DSI
export DEST_ETC_DIR=$IRODS_DSI
export IRODS_EXTERNALS_PATH=/opt/irods-externals
export IRODS_42_COMPAT=true

Now build and install the iRODS DSI:

cmake .
make
sudo make install

Add the install directory to the library search path:

echo \$LD_LIBRARY_PATH $IRODS_DSI | sudo tee /etc/gridftp.d/irods
sudo systemctl restart globus-gridftp-server

The package installation is complete.