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

Auteur Sujet: Installer la SFML 2.0 RC avec QT CREATOR  (Lu 5764 fois)

0 Membres et 1 Invité sur ce sujet

Keriz6850

  • Newbie
  • *
  • Messages: 32
    • Voir le profil
Installer la SFML 2.0 RC avec QT CREATOR
« le: Juin 17, 2012, 05:42:40 pm »
Bonjour,

Je souhaite faire un éditeur et pour la gestion de l'affichage du terrain il me faudrait utiliser la SFML dans une fenêtre QT. Cependant je travaille sous QT CREATOR, et , je ne vois aucune option permettant d'installer la SFML comme je le fais dans code::blocks.

Pourrais t-on me donner une piste, me guider ?

Merci.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Installer la SFML 2.0 RC avec QT CREATOR
« Réponse #1 le: Juin 17, 2012, 10:50:46 pm »
Il n'y pas à "installer" SFML pour QtCreator. Il faut juste la gérer dans ton projet comme n'importe quelle autre bibliothèque, pour ça je te renvoie à des tutoriels concernant QMake (les fichiers .pro), qui t'expliqueront bien mieux que moi comment faire.
Laurent Gomila - SFML developer

Keriz6850

  • Newbie
  • *
  • Messages: 32
    • Voir le profil
Re : Installer la SFML 2.0 RC avec QT CREATOR
« Réponse #2 le: Juin 18, 2012, 07:49:59 pm »
Ah, j'avais trouvé mais en fait après l'adaptation il me renvoie:

WARNING: d:\Projects\EDITEUR_EUGOLA\EDITEUR_EUGOLA.pro:1: Unescaped backslashes are deprecated.
WARNING: d:\Projects\EDITEUR_EUGOLA\EDITEUR_EUGOLA.pro:1: Unescaped backslashes are deprecated.
WARNING: d:\Projects\EDITEUR_EUGOLA\EDITEUR_EUGOLA.pro:1: Unescaped backslashes are deprecated.
   C:\QtSDK\QtCreator\bin\jom.exe -nologo -j 4 -f Makefile.Debug
   link /LIBPATH:"c:\QtSDK\Desktop\Qt\4.8.1\msvc2008\lib" /NOLOGO /DYNAMICBASE /NXCOMPAT /DEBUG /MANIFEST /MANIFESTFILE:"debug\EDITEUR_EUGOLA.intermediate.manifest" /SUBSYSTEM:WINDOWS "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /OUT:debug\EDITEUR_EUGOLA.exe @C:\Users\Guinou\AppData\Local\Temp\EDITEUR_EUGOLA.exe.696.0.jom
LINK : warning LNK4044: option '/D:\CodeBlocks\SFML\lib\libsfml-graphics.a' non reconnue ; ignorée
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: __thiscall sf::Texture::~Texture(void)" (__imp_??1Texture@sf@@QAE@XZ) référencé dans la fonction __unwindfunclet$??0MyCanvas@@QAE@PAVQWidget@@ABVQPoint@@ABVQSize@@@Z$0
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: __thiscall sf::Sprite::Sprite(void)" (__imp_??0Sprite@sf@@QAE@XZ) référencé dans la fonction "public: __thiscall MyCanvas::MyCanvas(class QWidget *,class QPoint const &,class QSize const &)" (??0MyCanvas@@QAE@PAVQWidget@@ABVQPoint@@ABVQSize@@@Z)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: __thiscall sf::Texture::Texture(void)" (__imp_??0Texture@sf@@QAE@XZ) référencé dans la fonction "public: __thiscall MyCanvas::MyCanvas(class QWidget *,class QPoint const &,class QSize const &)" (??0MyCanvas@@QAE@PAVQWidget@@ABVQPoint@@ABVQSize@@@Z)
main.obj : error LNK2001: symbole externe non résolu "protected: virtual void __thiscall sf::RenderWindow::onCreate(void)" (?onCreate@RenderWindow@sf@@MAEXXZ)
QSFMLCanvas.obj : error LNK2001: symbole externe non résolu "protected: virtual void __thiscall sf::RenderWindow::onCreate(void)" (?onCreate@RenderWindow@sf@@MAEXXZ)
main.obj : error LNK2001: symbole externe non résolu "protected: virtual void __thiscall sf::RenderWindow::onResize(void)" (?onResize@RenderWindow@sf@@MAEXXZ)
QSFMLCanvas.obj : error LNK2001: symbole externe non résolu "protected: virtual void __thiscall sf::RenderWindow::onResize(void)" (?onResize@RenderWindow@sf@@MAEXXZ)
main.obj : error LNK2001: symbole externe non résolu "public: virtual class sf::Vector2<unsigned int> __thiscall sf::RenderWindow::getSize(void)const " (?getSize@RenderWindow@sf@@UBE?AV?$Vector2@I@2@XZ)
QSFMLCanvas.obj : error LNK2001: symbole externe non résolu "public: virtual class sf::Vector2<unsigned int> __thiscall sf::RenderWindow::getSize(void)const " (?getSize@RenderWindow@sf@@UBE?AV?$Vector2@I@2@XZ)
main.obj : error LNK2001: symbole externe non résolu "private: virtual bool __thiscall sf::RenderWindow::activate(bool)" (?activate@RenderWindow@sf@@EAE_N_N@Z)
QSFMLCanvas.obj : error LNK2001: symbole externe non résolu "private: virtual bool __thiscall sf::RenderWindow::activate(bool)" (?activate@RenderWindow@sf@@EAE_N_N@Z)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: void __thiscall sf::Transformable::setOrigin(class sf::Vector2<float> const &)" (__imp_?setOrigin@Transformable@sf@@QAEXABV?$Vector2@M@2@@Z) référencé dans la fonction "private: virtual void __thiscall MyCanvas::OnInit(void)" (?OnInit@MyCanvas@@EAEXXZ)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: class sf::Vector2<float> const & __thiscall sf::Transformable::getScale(void)const " (__imp_?getScale@Transformable@sf@@QBEABV?$Vector2@M@2@XZ) référencé dans la fonction "private: virtual void __thiscall MyCanvas::OnInit(void)" (?OnInit@MyCanvas@@EAEXXZ)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: void __thiscall sf::Sprite::setTexture(class sf::Texture const &,bool)" (__imp_?setTexture@Sprite@sf@@QAEXABVTexture@2@_N@Z) référencé dans la fonction "private: virtual void __thiscall MyCanvas::OnInit(void)" (?OnInit@MyCanvas@@EAEXXZ)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: bool __thiscall sf::Texture::loadFromFile(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class sf::Rect<int> const &)" (__imp_?loadFromFile@Texture@sf@@QAE_NABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@ABV?$Rect@H@2@@Z) référencé dans la fonction "private: virtual void __thiscall MyCanvas::OnInit(void)" (?OnInit@MyCanvas@@EAEXXZ)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: void __thiscall sf::RenderTarget::draw(class sf::Drawable const &,class sf::RenderStates const &)" (__imp_?draw@RenderTarget@sf@@QAEXABVDrawable@2@ABVRenderStates@2@@Z) référencé dans la fonction "private: virtual void __thiscall MyCanvas::OnUpdate(void)" (?OnUpdate@MyCanvas@@EAEXXZ)
main.obj : error LNK2001: symbole externe non résolu "__declspec(dllimport) public: static class sf::RenderStates const sf::RenderStates::Default" (__imp_?Default@RenderStates@sf@@2V12@B)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: void __thiscall sf::RenderTarget::clear(class sf::Color const &)" (__imp_?clear@RenderTarget@sf@@QAEXABVColor@2@@Z) référencé dans la fonction "private: virtual void __thiscall MyCanvas::OnUpdate(void)" (?OnUpdate@MyCanvas@@EAEXXZ)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: __thiscall sf::Color::Color(unsigned char,unsigned char,unsigned char,unsigned char)" (__imp_??0Color@sf@@QAE@EEEE@Z) référencé dans la fonction "private: virtual void __thiscall MyCanvas::OnUpdate(void)" (?OnUpdate@MyCanvas@@EAEXXZ)
main.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: virtual __thiscall sf::Sprite::~Sprite(void)" (__imp_??1Sprite@sf@@UAE@XZ) référencé dans la fonction "public: virtual __thiscall MyCanvas::~MyCanvas(void)" (??1MyCanvas@@UAE@XZ)
QSFMLCanvas.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: virtual __thiscall sf::RenderWindow::~RenderWindow(void)" (__imp_??1RenderWindow@sf@@UAE@XZ) référencé dans la fonction "public: virtual __thiscall QSFMLCanvas::~QSFMLCanvas(void)" (??1QSFMLCanvas@@UAE@XZ)
QSFMLCanvas.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: __thiscall sf::RenderWindow::RenderWindow(void)" (__imp_??0RenderWindow@sf@@QAE@XZ) référencé dans la fonction "public: __thiscall QSFMLCanvas::QSFMLCanvas(class QWidget *,class QPoint const &,class QSize const &,unsigned int)" (??0QSFMLCanvas@@QAE@PAVQWidget@@ABVQPoint@@ABVQSize@@I@Z)
QSFMLCanvas.obj : error LNK2019: symbole externe non résolu "__declspec(dllimport) public: void __thiscall sf::Window::display(void)" (__imp_?display@Window@sf@@QAEXXZ) référencé dans la fonction "private: virtual void __thiscall QSFMLCanvas::paintEvent(class QPaintEvent *)" (?paintEvent@QSFMLCanvas@@EAEXPAVQPaintEvent@@@Z)
debug\EDITEUR_EUGOLA.exe : fatal error LNK1120: 19 externes non résolus

Et mon *.pro:

LIBS += -D:\CodeBlocks\SFML\lib\libsfml-graphics.a
INCLUDEPATH += D:\CodeBlocks\SFML\include
SOURCES += \
    main.cpp \
    myfenetre.cpp \
    QSFMLCanvas.cpp

HEADERS += \
    myfenetre.h \
    QSFMLCanvas.h \
    MyCanvas.h

FORMS += \
    myfenetre.ui
 

Finalement j'utiliserai un QGraphicsView. Merci beaucoup quand même.
« Modifié: Juin 18, 2012, 08:08:19 pm par Keriz6850 »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Installer la SFML 2.0 RC avec QT CREATOR
« Réponse #3 le: Juin 18, 2012, 09:00:10 pm »
Comme indiqué, il faut échapper les back-slashes, ou tout simplement utiliser des slashs.

Ensuite la ligne LIBS me paraît bizarre.

Moi j'aurais fait ça :
LIBS += -LD:/CodeBlocks/SFML/lib/ -lsfml-graphics

J'espère que tu ne changes pas de lib juste à cause de ça. C'est pas bien méchant comme souci, et surtout ça concerne plus l'utilisation de QMake que de SFML.
Laurent Gomila - SFML developer

Keriz6850

  • Newbie
  • *
  • Messages: 32
    • Voir le profil
Re : Installer la SFML 2.0 RC avec QT CREATOR
« Réponse #4 le: Juin 18, 2012, 09:26:19 pm »
Merci quand même mais non je n'abandonne pas la SFML ! Je la garde pour mon jeu. Sinon (en passant), est-ce que c'est possible d'ouvrir un exe d'SFML en donnant un argument (du genre, un fichier) depuis un programme ?
« Modifié: Juin 18, 2012, 09:30:49 pm par Keriz6850 »

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Installer la SFML 2.0 RC avec QT CREATOR
« Réponse #5 le: Juin 18, 2012, 11:02:51 pm »
C'est bien entendu faisable, et le fait qu'il y ait SFML dedans n'y change pas grand chose ;)
Laurent Gomila - SFML developer