Maison >développement back-end >C++ >Pourquoi CMake ne parvient-il pas à trouver ma bibliothèque lors de l'utilisation de « link_directories » ?
CMake ne parvient pas à localiser la bibliothèque avec l'appel "link_directories"
Ce problème se produit lors de la tentative de liaison d'une bibliothèque à l'aide de la directive "link_directories" dans CMake mais rencontrant des erreurs de l'éditeur de liens indiquant des références non définies aux fonctions de la bibliothèque.
Dans l'exemple fourni, le L'appel "link_directories" n'est pas placé correctement. Pour résoudre ce problème, assurez-vous que l'appel "link_directories" se trouve avant l'appel "add_executable" dans votre fichier CMakeLists.txt.
Voici le fichier CMakeLists.txt modifié :
link_directories(/usr/lib/x86_64-linux-gnu) add_executable(test main.cpp) target_link_libraries(test protobuf)
En plaçant "link_directories" avant "add_executable", CMake identifie correctement la bibliothèque lors de la liaison et résout les erreurs de référence non définies.
Il convient de noter que les messages d'erreur spécifiques et le chemin de la bibliothèque peuvent varier en fonction de votre système et de la bibliothèque à laquelle la bibliothèque est liée. Cependant, le principe général consistant à garantir que "link_directories" précède "add_executable" reste le même.
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!