J'écris un programme C++ pour surveiller une valeur et modifier l'état activé du pavé tactile et du point de suivi sur mon ordinateur portable. J'ai tout fonctionne à l'exception de l'appel à XIChangeProperty. Quand je lance make, il jetteObtention d'une référence non définie à XIChangeProperty
undefined reference to `XIChangeProperty'
Si je supprime la #include <X11/extensions/XInput.h>
de la source, il jette une autre erreur.
mon fichier CMake est la suivante
cmake_minimum_required(VERSION 2.8.4)
set(CMAKE_INSTALL_PREFIX "/")
set(CPACK_PACKAGING_INSTALL_PREFIX "/")
project(thinkpad_yoga_mode_detection)
set (PROJECT_VERSION "1.0")
set (PACKAGE "${PROJECT_NAME}")
set (VERSION "${PROJECT_VERSION}")
set (PACKAGE_NAME "${PACKAGE}")
set (PACKAGE_TARNAME "${PACKAGE}")
set (PACKAGE_VERSION "${VERSION}")
set (PACKAGE_STRING "${PACKAGE} ${VERSION}")
set(CMAKE_CXX_STANDARD 11)
find_package(X11 REQUIRED)
link_libraries(${X11_LIBRARIES})
include_directories(${X11_INCLUDE_DIR})
set(CMAKE_CXX_FLAGS "-O2")
set(CMAKE_CXX_FLAGS "-Wall")
set(SOURCE_FILES YogaModeSwitch.cpp)
add_executable(yoga_mode_switch ${SOURCE_FILES})
install(TARGETS yoga_mode_switch DESTINATION usr/bin)
install(
FILES yoga_mode_switch_daemon DESTINATION etc/init.d
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ
GROUP_EXECUTE GROUP_READ
WORLD_EXECUTE WORLD_READ)
Je ne sais pas ce que je suis absent que causerait XIChangeProperty pour montrer que non définie.
Le repo github avec le reste du code est ici https://github.com/kfechter/YogaModeSwitch