Maison > développement back-end > C++ > Pourquoi CMake ne parvient-il pas à trouver ma bibliothèque lors de l'utilisation de « link_directories » ?

Pourquoi CMake ne parvient-il pas à trouver ma bibliothèque lors de l'utilisation de « link_directories » ?

Susan Sarandon
Libérer: 2024-12-05 15:16:09
original
846 Les gens l'ont consulté

Why is CMake Failing to Find My Library When Using `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)
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal