Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: SFML 2.1 et Qt creator  (Lu 9018 fois)

0 Membres et 1 Invité sur ce sujet

m@thieu41

  • Newbie
  • *
  • Messages: 23
    • Voir le profil
SFML 2.1 et Qt creator
« le: Novembre 25, 2013, 07:48:05 pm »
Bonjour,

Alors voilà, je souhaite utiliser dans un de mes projet à la fois la SFML 2.1 et la dernière version de Qt. Pour ça, j'ai besoin de linker la SFML à mon IDE (Qt creator).

J'ai suivi le tuto:
https://github.com/SFML/SFML/wiki/Tutorial%3A-Compile-and-Link-SFML-with-Qt-Creator#step-4

J'ai (je crois) bien suivis toutes les étapes. Mais lorsque je compile mon projet (après avoir remplacé dans le .pro ce qu'il fallait), j'ai l'erreur (sur un code de base qui ne fait qu’ouvrir une fenêtre avec SFML et la fermer au clic sur la croix):
error: C1083: Impossible d'ouvrir le fichier includeÿ: 'SFML/Window.hpp'ÿ: No such file or directory

Si je comprends bien ça veut dire qu'il ne sait pas où trouver la bibliothèque c'est ça?
Pourtant j'ai dans mon .pro:
#-------------------------------------------------
#
# Project created by QtCreator 2013-11-25T19:34:54
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = sfml
TEMPLATE = app


SOURCES += main.cpp\
        mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

LIBS += -LC:/SFML/qtcreator-build/lib

CONFIG(release, debug|release): LIBS += -lsfml-audio -lsfml-graphics -lsfml-main -lsfml-network -lsfml-window -lsfml-system
CONFIG(debug, debug|release): LIBS += -lsfml-audio-d -lsfml-graphics-d -lsfml-main-d -lsfml-network-d -lsfml-window-d -lsfml-system-d

INCLUDEPATH += C:/SFML/include
DEPENDPATH += C:/SFML/include
 
Et dans mon ordinateur j'avais compilé SFML à l'adresse: C:/SFML/qtcreator-build
(j'ai les dossiers CMakeFiles, lib, src, et les fichiers cmake_install.cmake, CMakeCache.txt, Makefile et SFML.cbp à cette adresse)

Vous savez comment résoudre mon problème?
Merci d'avance!  ;D

EDIT: Au passage, j'ai fouillé dans mon dossier lib, et toutes les dll ont le suffixe -2 (ex: sfml-window-2.dll) c'est normal?
« Modifié: Novembre 25, 2013, 08:23:22 pm par m@thieu41 »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : SFML 2.1 et Qt creator
« Réponse #1 le: Novembre 25, 2013, 08:52:22 pm »
Citer
j'avais compilé SFML à l'adresse: C:/SFML/qtcreator-build
Alors pourquoi INCLUDEPATH += C:/SFML/include ?

Citer
Au passage, j'ai fouillé dans mon dossier lib, et toutes les dll ont le suffixe -2 (ex: sfml-window-2.dll) c'est normal?
Oui, c'est SFML 2.
Laurent Gomila - SFML developer

m@thieu41

  • Newbie
  • *
  • Messages: 23
    • Voir le profil
Re : SFML 2.1 et Qt creator
« Réponse #2 le: Novembre 25, 2013, 09:00:34 pm »
Merci pour ta réponse  :D

Oups j'ai oublié de modifier ça...
Mais à l'adresse C:/SFML/qtcreator-build il n'y a pas de dossier include. Du coup j'ai indiqué celui qui était parmi le dossier que j'ai téléchargé. (à l'adresse C:/SFML/SFML/include). J'ai alors un dossier nommé SFML, et dedans plusieurs fichiers ainsi que des hpp, donc je pense que c'est ça.
Ce qui me donne:
INCLUDEPATH += C:/SFML/SFML/include
DEPENDPATH += C:/SFML/SFML/include
Mais j'ai toujours la même erreur à la compilation...

J'ai également testé
INCLUDEPATH += C:/SFML/SFML/include/SFML
DEPENDPATH += C:/SFML/SFML/include/SFML
Mais ça ne donne rien non plus.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : SFML 2.1 et Qt creator
« Réponse #3 le: Novembre 25, 2013, 09:24:42 pm »
Si le fichier 'C:/SFML/SFML/include/SFML/Window.hpp' existe, alors pas de raison que le compilateur ne le trouve pas.

Mais sinon, plutôt que de prendre l'include path des sources + le lib path du répertoire de build, normalement tu es censé compiler la règle "install", qui produit une installation propre de SFML (avec en-têtes et bibliothèques), comme une release officielle.
Laurent Gomila - SFML developer

m@thieu41

  • Newbie
  • *
  • Messages: 23
    • Voir le profil
Re : Re : SFML 2.1 et Qt creator
« Réponse #4 le: Novembre 25, 2013, 09:36:04 pm »
Mais sinon, plutôt que de prendre l'include path des sources + le lib path du répertoire de build, normalement tu es censé compiler la règle "install", qui produit une installation propre de SFML (avec en-têtes et bibliothèques), comme une release officielle.
Heu... je ne comprends pas trop ce que tu veux dire...
Qu'entends tu par "compiler la règle "install" "?

Sinon oui, 'C:/SFML/SFML/include/SFML/Window.hpp' existe.

Merci encore pour ton aide.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : SFML 2.1 et Qt creator
« Réponse #5 le: Novembre 25, 2013, 10:35:32 pm »
Quand tu as généré tes projets ou makefiles via CMake, tu as tout un tas de cibles : les modules SFML (sfml-system, sfml-window, ...), les exemples si tu as activé l'option qui va bien (opengl, shaders, pong, ...), et un truc qui s'appelle "install". Cette cible effectue l'installation finale de SFML avec ce que tu as compilé. Parce que si tu regardes ton répertoire de build, tu remarqueras que c'est un truc à moitié sale avec plein de choses temporaires dedans, et pas tout (pas les en-têtes). Donc ce n'est clairement pas le truc final.
Laurent Gomila - SFML developer

m@thieu41

  • Newbie
  • *
  • Messages: 23
    • Voir le profil
Re : SFML 2.1 et Qt creator
« Réponse #6 le: Novembre 26, 2013, 05:49:36 pm »
Je n'ai pas de fichier nommé "install"...
Il y en a un qui se nomme "cmake_install.cmake" mais je ne sais pas comment le lancer si c'est bien lui.

Aussi ça n'a peut être pas d'importance mais je n'ai pas de dossiers: C:\QtSDK\mingw\bin ni C:\qtsdk\qt\bin; (en fait je n'ai carrément pas de dossier C:\QtSDK ni C:\qtsdk...).

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : SFML 2.1 et Qt creator
« Réponse #7 le: Novembre 26, 2013, 07:41:56 pm »
Citer
Je n'ai pas de fichier nommé "install"...
Laisse tomber, j'arriverai jamais à t'expliquer si tu ne sais pas ce qu'est une cible ;D

On va reprendre à zéro : tu as compilé SFML comment (tu as utilisé quel générateur dans CMake) ?

Citer
Aussi ça n'a peut être pas d'importance mais je n'ai pas de dossiers: C:\QtSDK\mingw\bin ni C:\qtsdk\qt\bin; (en fait je n'ai carrément pas de dossier C:\QtSDK ni C:\qtsdk...).
Pourquoi est-ce que tu me dis ça ?
Laurent Gomila - SFML developer

m@thieu41

  • Newbie
  • *
  • Messages: 23
    • Voir le profil
Re : SFML 2.1 et Qt creator
« Réponse #8 le: Novembre 26, 2013, 08:47:15 pm »
Laisse tomber, j'arriverai jamais à t'expliquer si tu ne sais pas ce qu'est une cible ;D
Le truc rond qu'on vise quand on joue au tir à l'arc?  ::)
*okjesors*  :-X

J'ai finalement réussi !!! ;D
En fait je compilais mes projets avec le mauvais générateur (je ne savais pas lequel il fallait prendre puisque c'est la première fois que j'utilise Qt Creator), MSVC au leu de MinGW.
Du coup j'ai changé, bidouillé 2-3 trucs et finalement ça marche!

Merci beaucoup pour ta patience et ton aide!  ;)