Maison >développement back-end >C++ >Comment ajouter correctement un éditeur de liens ou compiler des indicateurs dans CMake ?
Lors de la compilation d'un programme simple avec gestion des exceptions à l'aide d'arm-linux -androideabi-g compilateur, l'indicateur -fexceptions doit être ajouté pour activer la gestion des exceptions. Cependant, les tentatives d'ajout de cet indicateur via CMake à l'aide de set(CMAKE_EXE_LINKER_FLAGS) ou set(CMAKE_C_FLAGS) entraînent une erreur.
Pour ajouter un éditeur de liens ou compiler des indicateurs dans un fichier CMake, suivez ces étapes :
Définir les flags : Utilisez les commandes suivantes pour définir l'indicateur -fexceptions :
SET(FLAG_NAME -fexceptions)
Ajouter aux variables CMake : Ajoutez l'indicateur aux variables CMake pertinentes . Pour les indicateurs du compilateur :
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${FLAG_NAME}") SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${FLAG_NAME}")
Pour les indicateurs de l'éditeur de liens :
SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${FLAG_NAME}") SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} ${FLAG_NAME}")
Utiliser les propriétés cibles : Vous pouvez également utiliser les propriétés cibles :
get_target_property(TEMP ${TARGET} COMPILE_FLAGS) if(TEMP STREQUAL "TEMP-NOTFOUND") SET(TEMP "") else() SET(TEMP "${TEMP} ") endif() SET(TEMP "${TEMP}${FLAG_NAME}") set_target_properties(${TARGET} PROPERTIES COMPILE_FLAGS ${TEMP})
En suivant ces étapes, vous pouvez ajouter avec succès un éditeur de liens ou compiler des indicateurs dans un fichier CMake et résoudre le problème de l'activation de la gestion des exceptions avec l'indicateur -fexceptions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!