Although xtensor is a header-only library, we provide standardized means to install it, with package managers or with cmake.
Besides the xtensor headers, all these methods place the cmake
project
configuration file in the right location so that third-party projects can use
cmake's find_package
to locate xtensor headers.
A package for xtensor is available on the mamba (or conda) package manager.
mamba install -c conda-forge xtensor
A package for xtensor is available on Debian.
sudo apt-get install xtensor-dev
A package for xtensor is available on the Spack package manager.
spack install xtensor spack load --dependencies xtensor
You can also install xtensor from source with cmake. This requires that you have the xtl library installed on your system. On Unix platforms, from the source directory:
mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=path_to_prefix .. make install
On Windows platforms, from the source directory:
mkdir build cd build cmake -G "NMake Makefiles" -DCMAKE_INSTALL_PREFIX=path_to_prefix .. nmake nmake install
path_to_prefix
is the absolute path to the folder where cmake searches for
dependencies and installs libraries. xtensor installation from cmake assumes
this folder contains include
and lib
subfolders.
See the :doc:`build-options` section for more details about cmake options.
Although not officially supported, xtensor can be installed with MinGW:
mkdir build cd build cmake -G "MinGW Makefiles" -DCMAKE_INSTALL_PREFIX=path_to_prefix .. mingw32-make mingw32-make install
The different packages of xtensor are built with cmake, so whatever the installation mode you choose, you can add xtensor to your project using cmake:
find_package(xtensor REQUIRED) target_include_directories(your_target PUBLIC ${xtensor_INCLUDE_DIRS}) target_link_libraries(your_target PUBLIC xtensor)