9.4 Installer les librairies

Pour installer une librairie il faut utiliser la commande suivante :

1
install(TARGETS nomLibrairie LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)

Par convention on met les librairies dans un dossier lib (dont le parent est définit par la variable CMAKE_INSTALL_PREFIX)

Comme vous pouvez le constater, on se fou de savoir si la librairie et statique ou dynamique pour l'installer.

Là nous avons installé l'exécutable de la librairie (si on peut l'appeler comme ça). Mais avoir les fonctions compilés ne fait pas tout, il faut aussi avoir les prototypes des fonction.

Donc les .h.

Exactement.

Il faut aussi penser à installer les headers (.h) de la lib.

On peut le faire avec la fonction qui installe les fichiers :

1
2
3
4
5
#on récupère tout les headers
FILE(GLOB headers "${CMAKE_CURRENT_SOURCE_DIR}/*.h")

#on installe les includes dans le dossier de destination CMAKE_INSTALL_PREFIX/include/nomDeLaLib
install(FILES ${headers} DESTINATION include/nomDeLaLib)

Comme vous pouvez le constater, les exécutables ont leur dossier de prédilection, les ressources aussi, les librairies aussi, et les headers aussi.