### Documentation Detailed documentation can be found on the [official site.](https://www.psi.ch/detectors/users-support) ### Binaries Documentation to obtain the binaries via the conda package is available for [lib](https://github.com/slsdetectorgroup/sls_detector_lib) and [gui](https://github.com/slsdetectorgroup/sls_detector_gui) ### Source code One can also obtain the source code from this repository and compile while realizing the setup dependencies as required. ``` git clone https://github.com/slsdetectorgroup/slsDetectorPackage.git ``` #### Setup dependencies * Gui Client
Requirements: Qt 4.8 and Qwt 6.0 ``` export QTDIR=/usr/local/Trolltech/ export QWTDIR=/usr/local/qwt-6.0.1/ ``` If either of them does not exist, the GUI client will not be built. * Advanced user Calibration wizards
Requirements: ROOT ``` export ROOTSYS=/usr/local/root-5.34 ``` #### Compilation Compiling can be done in two ways. **1. Compile using script cmk.sh**
After compiling, the libraries and executables will be found in `slsDetectorPackage/build/bin` directory
Usage: [-c] [-b] [-h] [-d HDF5 directory] [-j]
* -[no option]: only make
* -c: Clean
* -b: Builds/Rebuilds CMake files normal mode
* -h: Builds/Rebuilds Cmake files with HDF5 package
* -d: HDF5 Custom Directory
* -t: Build/Rebuilds only text client
* -r: Build/Rebuilds only receiver
* -g: Build/Rebuilds only gui
* -j: Number of threads to compile through
* -e: Debug mode Basic Option: ./cmk.sh -b For only make: ./cmk.sh For make clean;make: ./cmk.sh -c For using hdf5 without custom dir /blabla: ./cmk.sh -h -d /blabla For rebuilding cmake without hdf5 ./cmk.sh -b For using multiple cores to compile faster: ./cmk.sh -j9
For rebuilding only certain sections
./cmk.sh -tg #only text client and gui
./cmk.sh -r #only receiver
**2. Compile without script**
Use cmake to create out-of-source builds, by creating a build folder parallel to source directory. ``` $ cd .. $ mkdir slsDetectorPackage-build $ cd slsDetectorPackage-build $ cmake ../slsDetectorPackage -DCMAKE_BUILD_TYPE=Debug -DSLS_USE_HDF5=OFF $ make ``` Use the following as an example to compile statically and using specific hdf5 folder ``` $ HDF5_ROOT=/opt/hdf5v1.10.0 cmake ../slsDetectorPackage -DCMAKE_BUILD_TYPE=Debug -DSLS_USE_HDF5=ON ``` After compiling, the libraries and executables will be found at `bin` directory ``` $ ls bin/ gui_client libSlsDetector.a libSlsDetector.so libSlsReceiver.a libSlsReceiver.so sls_detector_acquire sls_detector_get slsDetectorGui sls_detector_help sls_detector_put slsReceiver slsMultiReceiver ```