Skip to content

Building DSA_XENGINE

Dean Howarth edited this page Jun 26, 2024 · 2 revisions

Building DSA_XENGINE

The build system uses CMake for the newer code but the Makefile in the legacy directory is still available. If you do not have Make installed on your system you can download it from this page. DSA_XENGINE requires CMake 3.18 or later. Ensure you have a compatible version of CMake via the command:

cmake --version

Building with CMake

It is recommended to build DSA_XENGINE out-of-source. This way, one can build different implementations of the library with the same source code. To build the library with default setting, simply

git clone https://github.com/dsa110/dsa110-xengine.git
cd dsa110-xengine
git checkout feature/cmake
mkdir ../build
cd ../build
cmake -DCMAKE_CUDA_ARCHITECTURES=80 -DCMAKE_INSTALL_PREFIX=/path/to/desired/installation/location ../dsa110-xengine/
make
make -j install

Notice that we specify an architecture minimum of 80. This may be relaxed to 70 in future releases. The above will build and install DSA_XENGINE with CUDA enabled.

Building dependencies with CMake

You will notice in the default build set up that PSRDada and googletest were downloaded and built. PSRDada is a critical dependency and lightweight, so the default is to download and build. One can toggle the download step OFF and ON via the CMake flag

-DDSA_XENGINE_DOWNLOAD_PSRDADA={ON/OFF}

with ON to download. if OFF is selected, one put point CMake to your desired PSRDada installation via

-DPSRDada_DIR=/path/to/psrDADA/install

DMH: As more dependencies are enabled via the interface I will add documentation for them. Check back soon!

Clone this wiki locally