Programming Guide

Contents

Use CMake with oneAPI Applications

The CMake packages provided with Intel oneAPI products allow a CMake project to make easy use of oneAPI libraries on Windows*, Linux*, or macOS*. Using the provided packages, the experience should be similar to how other system libraries integrate with a CMake project. There are dependency and other build variables provided to CMake project targets as desired.
The following components support CMake:
  • Intel® oneAPI DPC++ Compiler - Linux, Windows
  • Intel Integrated Performance Primitives (Intel IPP) and Intel Integrated Performance Primitives Cryptography (Intel IPP Cryptography) - Linux, Windows
  • Intel MPI Library - Linux, Windows
  • Intel oneAPI Collective Communications Library (oneCCL) - Linux, Windows
  • Intel oneAPI Data Analytics Library (oneDAL) - Linux, Windows
  • Intel oneAPI Deep Neural Network Library (oneDNN) - Linux, Windows
  • Intel oneAPI DPC++ Library (oneDPL) - Linux, Windows
  • Intel oneAPI Math Kernel Library (oneMKL) - Linux, Windows, macOS
  • Intel oneAPI Threading Building Blocks (oneTBB) - Linux, Windows, macOS
  • Intel oneAPI Video Processing Library (oneVPL) - Linux, Windows
Libraries that provide a CMake configuration can be identified by looking in the following locations:
  • On Linux or macOS:
    • System:
      /usr/local/lib/cmake
    • User:
      ~/lib/cmake
  • On Windows:
    HKEY_LOCAL_MACHINE\Software\Kitware\CMake\Packages\
To use the CMake packages, use the oneAPI libraries as you would other system libraries. For example, using
find_package(tbb)
ensures that your application's CMake package is using the oneTBB package.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.