web-dev-qa-db-fra.com

Pourquoi cmake ne trouve-t-il pas un paquet installé?

J'essaie de construire ce repo pour les réseaux de neurones implémentés dans CUDA.

J'ai suivi les instructions de ce lien et effectué les actions suivantes sur un shell:

git clone https://github.com/ANNetGPGPU/ANNetGPGPU.git
cd ANNetGPGPU
mkdir build
cd build
cmake .. && make

Cependant, lorsque j'écris cette dernière ligne, l'erreur suivante est renvoyée:

CMake Error at /home/iibm/Documents/martins/cmake-3.12.1-Linux-x86_64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:137 (message):
  Could NOT find BZip2 (missing: BZIP2_LIBRARIES BZIP2_INCLUDE_DIR)
Call Stack (most recent call first):
  /home/iibm/Documents/martins/cmake-3.12.1-Linux-x86_64/share/cmake-3.12/Modules/FindPackageHandleStandardArgs.cmake:378 (_FPHSA_FAILURE_MESSAGE)
  /home/iibm/Documents/martins/cmake-3.12.1-Linux-x86_64/share/cmake-3.12/Modules/FindBZip2.cmake:62 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  CMakeLists.txt:7 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!
See also "/home/iibm/Documents/martins/ANNetGPGPU/build/CMakeFiles/CMakeOutput.log".

Mais bzip2 est définitivement installé, car bzip2 --version renvoie:

bzip2, a block-sorting file compressor.  Version 1.0.6, 6-Sept-2010.

   Copyright (C) 1996-2010 by Julian Seward.

Alors, comment puis-je résoudre ce problème et pourquoi cela se produit-il?

1
Tendero

Lorsque vous créez un logiciel qui utilise des bibliothèques telles que bzip2, vous devez installer le package -dev, qui comprend les fichiers d'en-tête (*.h) nécessaires au compilateur et les fichiers de bibliothèque nécessaires à l'éditeur de liens.

Dans votre cas, pour bzip2, sous Ubuntu, le nom du paquet contenant les fichiers nécessaires est libbz2-dev, vous pouvez donc résoudre ce problème en installant ce paquet:

Sudo apt-get install libbz2-dev
4
filbranden