Я хочу запустить / остановить службу systemd из моего проекта C ++.Поэтому мне нравится использовать systemd lib и предоставленные заголовки.Я использую cmake для генерации make-файлов.Я пытаюсь получить systemd в cmake через
pkg_check_modules(SDBUS REQUIRED systemd)
, который на самом деле работает как
message(STATUS "FOUND" ${SDBUS_FOUND})
возвращает 1.
Однако все другие необходимые переменные, созданныеcmake вроде
message(STATUS "LIBS" ${SDBUS_LIBRARIES})
message(STATUS "LIB_DIRS" ${SDBUS_LIBRARY_DIRS})
message(STATUS "LDFLAGS" ${SDBUS_LDFLAGS})
message(STATUS "LDFLAGS_OTHER" ${SDBUS_LDFLAGS_OTHER})
message(STATUS "INCLUDE DIRS" ${SDBUS_INCLUDE_DIRS})
message(STATUS "CFLAGS" ${SDBUS_CFLAGS})
message(STATUS "CFLAGS_OTHER" ${SDBUS_CFLAGS_OTHER})
пусто.Что приводит к ошибке компоновщика при компиляции проекта.В самом деле, когда вы звоните
pkg-config --libs systemd
, он тоже пустой.Кто-нибудь знает, как решить эту проблему и почему вся эта информация недоступна для systemd?