Installation
Required packages
To compile and use DQMCpp you need:
- C++ compiler with at least C++11 support (GCC and Clang usually)
- CMake
- cURL library and headers installed
make
utility- Doxygen to generate documentation
Debian-like systems (Debian, Ubuntu)
sudo apt-get install make g++ cmake libcurl4 libcurl4-openssl-dev
Centos-like systems
sudo yum install make g++ cmake libcurl4 libcurl4-openssl-devel
Build from source
At the moment we don't provide pre-built packages, so you have to build DQMCpp from source.
Here a copy-paste snippet to clone and build default DQMCpp libraries (with ECAL PFG plugins).
git clone https://github.com/thegriglat/dqmcpp.git
cd DQMCpp
mkdir build
cd build
cmake ../src
make # or make -j $(nproc)
To specify your own plugin diretory use cmake -DPLUGINDIR
option.
Build documentation
cd DQMCpp
make docs
Documentation will be written in doxygen
directory.
Configuration
Prepare certificate and decrypted key files
-
Obtain GRID certificate if you don't have one.
-
Then you need to save your GRID certificate in p12 format. It is the same format as used by
voms-proxy-init
. Please follow instructions provided by CERN for IE, Firefox or Mac. -
Extract certificate part by executing
openssl pkcs12 -in myCert.p12 -clcerts -nokeys -out usercert.pem
(you will be asked for the password used when saving the certificate)
-
Extract private key by executing
openssl pkcs12 -in myCert.p12 -nocerts -out userkey_encrypted.pem
(you will be asked for the password used when saving the certificate, and then for a password to encrypt the key with).
-
Decrypt private key:
openssl rsa -in userkey_encrypted.pem -out userkey.pem
(you will be asked for the password from Step 3). You can now remove
userkey_encrypted.pem
-
Change permissions for the decrypted key:
chmod go-rw userkey.pem
After these steps copy userkey.pem
and usercert.pem
to ~/.globus
directory (default for CERN lxplus)
Configuration done!