Настройка параметров сборки проекта прикладного решения на C++
Для сборки прикладного решения необходимо указать параметры сборки в файле CMakeLists.txt. Файл CMakeLists.txt должен содержать следующие команды:
- cmake_minimum_required(VERSION 3.25)
Указание минимальной поддерживаемой версии CMake. Для сборки проекта на базе Kaspersky Neuromorphic Platform требуется CMake версии не ниже 3.25.
- project(<название_проекта>)
Указание названия проекта.
- set(CMAKE_CXX_STANDARD 17)
Указание C++ 17 в качестве используемого языкового стандарта.
- add_subdirectory(<директория_с_исходным_кодом_платформы>)
Указание директории, включающей программу, сборку которой требуется выполнить.
- add_executable("${PROJECT_NAME}" <файл_программы>)
Указание исполняемого файла.
- target_link_libraries("${PROJECT_NAME}" PRIVATE <подключаемые_библиотеки_платформы>)
Определение библиотек Kaspersky Neuromorphic Platform, которые будут подключены к вашему проекту. Вы можете подключить библиотеки
backends,neuron_trits,synapse_traits,core,metaиframework.
Перед сборкой проекта в ОС Windows необходимо определить параметр Boost_ROOT.
Подробнее о конфигурации сборки с помощью CMake см. документацию CMake.
Чтобы настроить параметры сборки проекта прикладного решения на C++:
- Перейдите в рабочую директорию.
- В рабочей директории создайте файл
CMakeLists.txt. - Откройте созданный файл в любом текстовом редакторе и укажите параметры сборки проекта.
Пример CMakeLists.txt
cmake_minimum_required(VERSION 3.25)
# digits-recognition – название проекта.
project(digits-recognition)
set(CMAKE_CXX_STANDARD 17)
# Запускает CMake в директории KNP и добавляет все проекты из директории в сборку.
add_subdirectory(KNP)
# Добавляет бинарный файл с исходным кодом в файл программы main.cpp.
add_executable("${PROJECT_NAME}" main.cpp)
# Подключает фреймворк и библиотеку однопоточного бэкенда для CPU к проекту digits-recognition.
target_link_libraries("${PROJECT_NAME}" PRIVATE KNP::BaseFramework::Core KNP::Backends::CPUSingleThreaded)
При необходимости вы можете загрузить фреймворк динамически.
- Сохраните изменения в файле
CMakeLists.txt.