CMake ne peut pas trouver de malédictions
Je suis en train de compiler le openlase bibliothèque de www.marcansoft.com et ont été en cours d'exécution dans des problèmes avec CMake. CMake est de retourner un message d'erreur indiquant qu'il ne trouve pas les Malédictions, et après beaucoup de recherche je suis toujours perplexe quant à ce qu'est la question. J'ai vérifié que j'ai les divers ncurses paquets installés, mais toujours l'erreur persiste. Je ne suis pas très familier avec CMake, mais j'ai été en mesure de résoudre d'autres problèmes de dépendance qui se pose avant celui-ci. Voici la sortie du terminal.
tom@SILVER:~/dev/openlase$ cmake ./
-- Found JACK
CMake Error at /usr/share/cmake-2.8/Modules/FindPackageHandleStandardArgs.cmake:70 (MESSAGE):
Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
Call Stack (most recent call first):
/usr/share/cmake-2.8/Modules/FindCurses.cmake:159 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
examples/27c3_slides/CMakeLists.txt:3 (find_package)
-- Configuring incomplete, errors occurred!
Toute aide serait grandement appréciée.
- Tom
source d'informationauteur waffleShirt
Vous devez vous connecter pour publier un commentaire.
Est ici qu'est-ce résolu mes problèmes sur Ubuntu 12.04 x86_64 (64 bits) (Merci syslogic )
Pour quelque raison que ce soit (1:00 am peut-être?) réglage CURSES_USE_NCURSES VRAI n'a pas l'air de fonctionner. Je suis donc allé avec un hack de travail.
Vérifié qu'il est installé:
Vous verrez quelque chose à l'effet:
libncurses5-dev is already the newest version.
Afin de trouver la bibliothèque et de les inclure.
$ locate libncurses.so
Note de l'emplacement, de la mine:
/usr/lib/x86_64-linux-gnu/libncurses.so
$ locate curses.h
Remarque localisation de la mine:
/usr/include
:
<cmake source dir>/Modules/FindCurses.cmake
ajouter en haut, à droite après les commentaires
puis rincez, répétez le processus de construction
ccmake doit maintenant être installé.
Votre pal,
Un autre moyen pour résoudre ce problème est d'ajouter ces 2 lignes à FindCurses.cmake (en haut):
Temporairement mis de CURSES_USE_NCURSES à TRUE pour forcer l'utilisation de NCURSES, plutôt que de laisser CMake essayer de trouver des MALÉDICTIONS.
Avez-vous des correspondants
-dev
paquet installé trop? Sur Ubuntu (et sans doute de quoi que ce soit dérivé de Debian), il estlibncurses5-dev
. D'autres systèmes peuvent utiliser-devel
ou similaire balises.Le compilateur est à la recherche pour les en-têtes de bibliothèque, et ceux qui ne sont pas fournis par le paquet standard. (Les en-têtes ne sont pas nécessaires lors de l'exécution, uniquement lors de la compilation de logiciel, de sorte qu'ils le rendre facile pour supprimer les trucs inutiles pour les systèmes qui ne sont pas en train de faire une compilation.)
La openlase wiki n'a pas l'affichage de tous les paquets nécessaires. Vérifier que les pages du wiki sur github pour des instructions mises à jour. Pour les malédictions le paquet manquant a été libncurses5-dev
sudo apt-get install libncurses5-dev
Temporairement mis de CURSES_NEED_NCURSES à TRUE pour forcer l'utilisation de NCURSES, plutôt que de laisser CMake essayer de trouver des MALÉDICTIONS.
CURSES_USE_NCURSES est utilisé par FindCurses.cmake interne de manière à ce paramètre qui ne va pas aider.