Skip to content
Nathan A. Sparks edited this page Oct 16, 2016 · 41 revisions

Usage

The following instructions assume a 64-bit Linux user working in a tcsh shell.

hdpm setup

Downloading hdpm is not necessary on the JLab CUE, see next section below.

You can find download links for the latest release at https://github.com/JeffersonLab/hdpm/releases.

64-bit Linux and macOS binaries are available.

The following commands set up hdpm version 0.2.0, and include a command to download it from the command line.

macOS users should replace linux with macOS in the following commands.

curl -OL https://halldweb.jlab.org/dist/hdpm/hdpm-0.2.0.linux.tar.gz
tar xf hdpm-0.2.0.linux.tar.gz
setenv PATH $PWD/hdpm-0.2.0/bin:$PATH
setenv GLUEX_TOP /path/to/your/package/directory

If $GLUEX_TOP is an empty string or unset, hdpm will use the current working directory.

hdpm setup at JLab

setenv PATH /group/halld/Software/hdpm/0.2.0/bin:$PATH
setenv GLUEX_TOP /path/to/your/package/directory

Getting help with hdpm commands

To show available commands:

hdpm

To see usage:

hdpm help <command>

Package configuration

Run "hdpm select" to write the default package settings to the settings directory.

To customize the package settings, edit the JSON files in the settings directory.

To save your package settings:

hdpm save <settings-id>

To select a group of package settings:

hdpm select <settings-id>

To set your versions using a version XMLfile:

hdpm select --xml https://halldweb.jlab.org/dist/version_1.27.xml

Building sim-recon and its dependencies

The following cycles are typical in usage of hdpm.

The intermediate steps of editing and running the code being developed are not indicated in the commands below.

First you do an initial build:

hdpm build sim-recon

Then you develop a plugin (for example) and build/test it:

hdpm build sim-recon/master/src/plugins/Analysis/myplugin
hdpm clean sim-recon/master/src/plugins/Analysis/myplugin
hdpm build sim-recon/master/src/plugins/Analysis/myplugin

Next you modify other parts of the code and/or merge the master branch, before cleaning and then rebuilding the whole project:

hdpm update sim-recon
hdpm clean sim-recon
hdpm build sim-recon

Then you start on a new line of development.

Using the prebuilt sim-recon distribution

hdpm can install a distribution of prebuilt packages.

This is mainly intended for use outside of the JLab CUE.

If you are working on the JLab CUE, use the group builds instead.

To install the latest prebuilt packages:

hdpm install

Rerun this command to update.

To do a development build of sim-recon against the prebuilt dependencies:

hdpm install
hdpm build sim-recon

Setting the Hall-D environment variables

To set up the GlueX environment (default settings id):

source $GLUEX_TOP/env-setup/master.csh

To use sim-recon binary distribution:

source $GLUEX_TOP/env-setup/dist.csh
Clone this wiki locally