Forum de la communauté SFML

Aide => Général => Discussion démarrée par: Neckara le Février 14, 2015, 07:03:52 am

Titre: CMake Could NOT find SFML (Debian Jessie 3.16.0-4-amd64)
Posté par: Neckara le Février 14, 2015, 07:03:52 am
Bonjour,

Je tente de compiler un projet utilisant la SFML
find_package(SFML 2.1 REQUIRED system window graphics audio)

Mais j'ai l'erreur suivante avec cmake :
Citer
CMake Error at cmake_modules/FindSFML.cmake:312 (message):
  Could NOT find SFML (missing: SFML_SYSTEM_LIBRARY SFML_WINDOW_LIBRARY
  SFML_GRAPHICS_LIBRARY SFML_AUDIO_LIBRARY)
Call Stack (most recent call first):
  CMakeLists.txt:35 (find_package)


Pourtant la SFML est bien installée sur mon poste (Debian Jessie 3.16.0-4-amd64 ) :
Citer
~$ ls /usr/lib/x86_64-linux-gnu/libsfml-*
/usr/lib/x86_64-linux-gnu/libsfml-audio.so.2       /usr/lib/x86_64-linux-gnu/libsfml-network.so.2    /usr/lib/x86_64-linux-gnu/libsfml-window.so.2
/usr/lib/x86_64-linux-gnu/libsfml-audio.so.2.1     /usr/lib/x86_64-linux-gnu/libsfml-network.so.2.1  /usr/lib/x86_64-linux-gnu/libsfml-window.so.2.1
/usr/lib/x86_64-linux-gnu/libsfml-graphics.so.2    /usr/lib/x86_64-linux-gnu/libsfml-system.so.2
/usr/lib/x86_64-linux-gnu/libsfml-graphics.so.2.1  /usr/lib/x86_64-linux-gnu/libsfml-system.so.2.1

Les find_library ne me trouvent rien, j'ai essayé de rajouter  /usr/lib/x86_64-linux-gnu dans FIND_SFML_PATHS, j'ai aussi tenté de rajouter lib/x86_64-linux-gnu dans les préfixes des find_library, rien à faire.

Je suis donc allé rechercher la dernière version du findSFML.cmake sur le dépôt de la SFML : https://github.com/SFML/SFML/blob/master/cmake/Modules/FindSFML.cmake
Rien ne change.

Je ne comprends pas du tout ce qui pourrait clocher, auriez-vous une idée ?

Merci d'avance
Titre: Re : CMake Could NOT find SFML (Debian Jessie 3.16.0-4-amd64)
Posté par: Neckara le Février 14, 2015, 07:39:25 am
Je viens de trouver la solution sous la douche :
Il y a des libsfml-x.so.y mais pas de libsfml-x.so

Un simple ln -s a pu résoudre le problème,
Pourtant j'avais bien installé la SFML à partir des dépôts de Debian  ???

J'ai encore un petit problème pour le dossier d'inclusion mais je pense que je vais pouvoir m'en sortir.
Titre: Re : CMake Could NOT find SFML (Debian Jessie 3.16.0-4-amd64)
Posté par: Neckara le Février 14, 2015, 07:57:10 am
Très étrange… j'ai des .h au lieu de .hpp.

Pourtant d'après SFML/Config.h, j'ai la bonne version de la SFML, qu'est-ce qu'ils ont fait dans les dépôts Debian ??
Titre: Re : CMake Could NOT find SFML (Debian Jessie 3.16.0-4-amd64)
Posté par: Neckara le Février 14, 2015, 08:15:19 am
Bon, j'ai enfin réussi à compiler, il manquait un "#define SFML_VERSION_PATCH" dans le fichier Confic.hpp que j'avais récupérer dans la release 2.1.