Je veux générer Makefile avec la cible d'installation, en effectuant l'installation sur / usr au lieu de par défaut / usr / local. En supposant que le répertoire de construction est fait dans le sous-répertoire source, j'exécute:
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
CMakeCache.txt contient: CMAKE_INSTALL_PREFIX:PATH=/usr
(OK?)
Maintenant j'exécute:
faire faire installer
Tous les fichiers sont toujours installés sur usr / local. Qu'est-ce qui ne va pas?
Edit: Il n'y a aucun CMAKE_INSTALL_PREFIX dans aucun des fichiers de projet CMakeLists.txt. Avant d'exécuter cmake, je supprime tout du répertoire de sortie. Les directives d'installation dans CMakeLists.txt ressemblent à:
install(TARGETS mylibrary DESTINATION lib)
la source
PROJECT
commande et comment avoir cettecmake
option avant elle? Vous auriez un exemple?Ma première semaine d'utilisation de cmake - après quelques années d'autotools GNU - donc j'apprends toujours (mieux que d'écrire des macros m4), mais je pense que modifier CMAKE_INSTALL_PREFIX après avoir défini le projet est le meilleur endroit.
CMakeLists.txt
Première exécution (pas de cache)
Deuxième manche
Faites-moi savoir si je me trompe, j'ai beaucoup à apprendre. C'est marrant.
la source