J'ai créé une application simple qui fonctionne bien. Cependant, maintenant je dois lier avec quelques bibliothèques dans le répertoire suivant.liant des bibliothèques tierces
/opt/norton/lib
Dans mon Makefile je donne les résultats suivants avec des œuvres, mais je dois utiliser CMake
LIBS_PATH = -L/opt/norton/lib
INC_PATH = -I/opt/norton/inc
LIBS = -lntctrl
Dans mon CMakeList.txt j'ai cela, mais ne fonctionne pas je garde gettng l'erreur suivante :
undefined reference to `nt_init'
Ceci est mon CMakeList.txt
# Includes files
INCLUDE_DIRECTORIES(/opt/norton/inc)
# Link libraries
LINK_DIRECTORIES(/opt/norton/lib)
# Add the library that is used by nt_init
TARGET_LINK_LIBRARIES(-lntctrl)
ADD_LIBRARY(application initialize_nw)
Un grand merci pour tous les conseils,
Bonjour, merci pour la réponse. Oui, j'ai déjà essayé ça (ntctrl). Dans mon initilaize_nw.c j'ai inclus l'en-tête ntctrllib.h, donc il inclut le fichier d'en-tête car il ne montre aucune erreur qu'il ne peut pas trouver. Ai-je raison de dire que TARGET_LINK_LIBRARIES est correct à utiliser? Merci beaucoup. – ant2009
Bonjour, j'ai toujours un problème lorsque je spécifie la bibliothèque ntctrl dans TARGET_LINK_LIBRARIES (ntctrl). La bibliothèque se trouve dans le répertoire/opt/norton/lib. Comment le TARGET_LINK ... sait-il qu'il doit chercher dans le répertoire opt/norton/lib? Merci. – ant2009
LINK_DIRECTORIES est bien, peut-être mettre la ligne ADD_LIBRARY avant le TARGET_LINK_LIBRARIES, ou même utiliser ADD_EXECUTABLE à la place (me semble de l'appellation que l'application n'est pas une lib) – jdehaan