web-dev-qa-db-fra.com

Comment pointer cmake vers zlib include path?

Ou tout répertoire/bibliothèque d'inclusion.

J'utilise l'outil cmake gui donc je le lance et généralement le gui mettra en surbrillance l'inclusion ou la bibliothèque qu'il ne peut pas trouver et vous permet d'ouvrir une boîte de dialogue ouverte pour définir le chemin, mais il ne le fait pas pour ce cmake cofig qu'il vous indique dans texte rouge dans la sortie de l'outil gui, donc,

CMake Error at C:/Program Files/CMake/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:136 (message):
  Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.0/Modules/FindPackageHandleStandardArgs.cmake:343 (_FPHSA_FAILURE_MESSAGE)
  C:/Program Files/CMake/share/cmake-3.0/Modules/FindZLIB.cmake:101 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  src/CMakeLists.txt:7 (find_package)

Donc, toujours en utilisant l'interface graphique, comment puis-je pointer cmake vers le répertoire d'inclusion zlib?

15
graham

Je suppose d'abord que ZLib est installé quelque part, et je suppose que c'est dans un emplacement non standard depuis que CMake l'a trouvé. Si c'est vrai, vous pouvez définir l'emplacement dans CMake-gui. Vous devrez d'abord cliquer sur la case "Avancé" en haut, car le fichier FindZLIB.cmake a la ligne suivante "mark_as_advanced (ZLIB_LIBRARY ZLIB_INCLUDE_DIR)".

Vous devriez maintenant pouvoir voir les options ZLIB_LIBRARY ZLIB_INCLUDE_DIR et définir le chemin correct.

16
StAlphonzo

Solution rapide: apt-get install zlib1g-dev

16
radu

Pour les futurs googleurs, selon le docs :

Un inclus peut définir ZLIB_ROOT sur une racine d'installation zlib pour indiquer à ce module où chercher.

4
Elhanan Ilani

Pour ajouter à la réponse d'Elhanan Ilani (pour tous les novices, comme moi), cela devrait être déclaré près du haut du fichier CMakeLists.txt. Par exemple:

set(ZLIB_ROOT /home/foo/zlib-1.2.11/)
set(CURL_ROOT /home/foo/anaconda3/)
0
Josh

dans mon cas, définissez ZLIB_ROOT, ZLIB_LIBRARY

c:\zlib - include
        - lib
0
sailfish009