.. Copyright (c) 2016, Johan Mabille and Sylvain Corlay Distributed under the terms of the BSD 3-Clause License. The full license is in the file LICENSE, distributed with this software. .. raw:: html Installation ============ Getting the library ------------------- `xsimd` is a header-only library, so installing it is just a matter of copying the ``include/xsimd`` directory. However we provide standardized means to install it, with package managers or with cmake. Besides the `xsimd` 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 `xsimd` headers. .. image:: conda.svg Using the conda-forge Package ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ A package for `xsimd` is available for the `mamba `_ (or `conda `_) package manager. .. code:: bash mamba install -c conda-forge xsimd .. image:: spack.svg Using the Spack Package ~~~~~~~~~~~~~~~~~~~~~~~ A package for `xsimd` is available on the `Spack `_ package manager. .. code:: bash spack install xsimd spack load xsimd .. image:: cmake.svg From Source with cmake ~~~~~~~~~~~~~~~~~~~~~~ You can install `xsimd` from source with `Cmake `_. From the source directory: .. code:: bash cmake -B build/ -D CMAKE_INSTALL_PREFIX=/path/to/install/dir cmake --build build/ cmake --install build/ You may need to customize the default `CMake `_, for instance for picking ``nmake`` on Windows platforms: .. code:: bash cmake -B build/ -G "NMake Makefiles" -D CMAKE_INSTALL_PREFIX=/path/to/install/dir cmake --build build/ cmake --install build/ Using the library inside CMake ------------------------------ Inside the user's ``CMakelists.txt``, the user can add xsimd to their build with the ``xsimd`` target. When using CMake this way, this will set add the xsimd headers in the compiler options, as well as forward other xsimd requirements (minimum C++ version for instance). .. code:: cmake find_package(xsimd REQUIRED) target_link_libraries(myproject PRIVATE xsimd)