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

Auteur Sujet: Compilation d'un projet SFML sous windows  (Lu 3019 fois)

0 Membres et 1 Invité sur ce sujet

Algue-Rythme

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
    • Progdupeupl
    • E-mail
Compilation d'un projet SFML sous windows
« le: Juillet 30, 2013, 06:06:40 pm »
Bonjour à vous,

C'est la première fois que j'installe la SFML, je suis sous windows XP 32 bits et je possède MinGW (l'une des toutes dernières versions).

Je me trouve fort en peine pour la compilation de mon premier projet (l'exemple de base fourni dans les tutoriels). En effet c'est la première fois que je fais appel à une bibliothèque externe, d'une part, et d'autre part j'ignore très exactement ce que je fais et ce que je dois faire (car j'ignore quels sont les mécanismes de compilation et leur fonctionnement).

Je n'utilise ni Code::Blocks ni Visual C++, et je ne souhaite pas devoir les installer comme solution à mon problème. Je suis actuellement sous Notepad++, et j'utilise un plug-in nommé NppExec qui me permet de rédiger des petits scripts envoyés à la ligne de commande, comme si je compilais en ligne de commande, mais en gagnant du temps.

J'aimerais connaître les options que je dois passer à mon compilateur et toutes les manipulations auxquelles je devrais me livrer pour compiler le projet, en liant les librairies de façon dynamique. J'en profite pour signaler que SFML se trouve dans C:\library\.

J'aimerais également, dans la mesure du possible, me passer de solutions "sales" qui consisteraient à copier l'intégralité de SFML/include dans le dossier include de MinGW.

Merci d'avance pour toute aide pouvant m'être apportée !  :)
Les amis vont et viennent, mais les ennemis s'accumulent.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Compilation d'un projet SFML sous windows
« Réponse #1 le: Juillet 30, 2013, 06:45:51 pm »
Options de compilation :
-ISFML/include

Options d'édition de lien :
-LSFML/lib -lsfml-graphics -lsfml-window -lsfml-system

J'ai mis graphics, window et system mais à toi de voir lesquelles tu veux et en quelle variante (statique/dynamique, debug/release).

Et bien sûr, "SFML" est le chemin d'installation de SFML.

Si tu souhaites compiler en ligne de commande, tu devrais vraiment lire des tutoriels spécifiques, c'est beaucoup mieux que de demander sur le forum de la bibliothèque XYZ, sur lequel on va te pondre la réponse sans explication ;)
Laurent Gomila - SFML developer

Algue-Rythme

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
    • Progdupeupl
    • E-mail
Re : Compilation d'un projet SFML sous windows
« Réponse #2 le: Juillet 30, 2013, 07:43:05 pm »
Merci beaucoup !

Tout  a fonctionné, la compilation tout comme l'édition des liens. Au lancement mon programme crashait car il ne trouvait pas certaines dll ; je les ai copiées dans le répertoire courant de l'exécutable.

A présent il persiste à planter, et ce sans réclamer d'autres dll. L'erreur se produit dès l'ouverture de RenderWindow car celle-ci n'apparaît pas à l'écran, et la seule ligne suivante :
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
semble suffire à provoquer l'arrêt du programme.

Cela peut-il avoir un quelconque rapport avec mon matériel et ses pilotes, ou est-ce plutôt en lien avec le compilateur utilisé ? Je précise que j'ai bien pris la SFML proposée en téléchargement pour DW2 (qui est précisément le nom d'une dll dans mon MinGW\bin, pour 32 bits tout comme mon OS).

Merci une fois encore.


Les amis vont et viennent, mais les ennemis s'accumulent.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Compilation d'un projet SFML sous windows
« Réponse #3 le: Juillet 30, 2013, 09:32:20 pm »
Fais voir ce que raconte un "mingw32-gcc -v" tapé dans une console, pour être sûr.
Laurent Gomila - SFML developer

Algue-Rythme

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
    • Progdupeupl
    • E-mail
Re : Compilation d'un projet SFML sous windows
« Réponse #4 le: Juillet 30, 2013, 10:09:56 pm »
Voilà ce qu'il me recrache :

Using built-in specs.
COLLECT_GCC=mingw32-gcc
COLLECT_LTO_WRAPPER=c:/programs/mingw/bin/../libexec/gcc/mingw32/4.6.2/lto-wrapper.exe
Target: mingw32
Configured with: ../gcc-4.6.2/configure --enable-languages=c,c++,ada,fortran,objc,obj-c++ --disable-sjlj-exceptions --with-dwarf2 --enable-shared --enable-libgomp --disable-win32-registry --enable-libstdcxx-debug --enable-version-specific-runtime-libs --build=mingw32 --prefix=/mingw
Thread model: win32
gcc version 4.6.2 (GCC)

 

Merci encore de me consacrer du temps !
« Modifié: Juillet 30, 2013, 10:13:34 pm par Algue-Rythme »
Les amis vont et viennent, mais les ennemis s'accumulent.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Compilation d'un projet SFML sous windows
« Réponse #5 le: Juillet 30, 2013, 10:15:13 pm »
Les versions 4.6 ne sont pas compatibles avec les 4.7, il faut recompiler SFML ou changer de version de compilateur.
Laurent Gomila - SFML developer

Algue-Rythme

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
    • Progdupeupl
    • E-mail
Re : Compilation d'un projet SFML sous windows
« Réponse #6 le: Juillet 30, 2013, 10:35:36 pm »
En effet, après mise à jour de mon compilateur tout marche parfaitement.

Je m'excuse de t'avoir fait perdre du temps sur ce problème bénin et peut-être trop récurrent.

Merci encore et bonne soirée ! :)
Les amis vont et viennent, mais les ennemis s'accumulent.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Compilation d'un projet SFML sous windows
« Réponse #7 le: Juillet 30, 2013, 10:38:52 pm »
Citer
Je m'excuse de t'avoir fait perdre du temps
Si c'était une perte de temps je viendrai pas aider les gens sur le forum ;)
Laurent Gomila - SFML developer

 

anything