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

Auteur Sujet: [Résolu] Compilation linux-->codeBlocks  (Lu 1773 fois)

0 Membres et 1 Invité sur ce sujet

fayastone

  • Newbie
  • *
  • Messages: 11
    • Voir le profil
    • E-mail
[Résolu] Compilation linux-->codeBlocks
« le: Décembre 05, 2014, 01:11:52 am »
Bonjour à tous,

J'ai repris un vieux projet en SFML effectué à l'époque sur Linux. Souhaitant développer sur Windows j'ai donc installé codeblocks, téléchargé les sources de la SFML et recompilé cette dernière (l'exemple du tuto fonctionne à merveille).
Ainsi j'ai créé un nouveau projet, introduit l'ensemble de mes fichiers dedans (avec tous les sprites, fontes, et sons etc...) et lancé le build (après avoir bien sûr lié la SFML au projet).
Cependant lors de la compilation, une erreur arrive rapidement :
"myfile.cc|20|error: 'class sf::Clock' has no member named 'GetElapsedTime'|"
D'autres erreurs sur sf::sound, et je pense que cela aurait été pareil sur n'importe quel autre objet de la SFML.
Après avoir recherché et cogité je pense que cela vient du fait que la compilation ne suit pas le chemin du makefile fait sur Linux.

J'ai donc tenté d'indiquer à codeblocks d'utiliser ce makefile qui fonctionnait sous linux et j'ai une erreur :

mingw32-make.exe: *** No rule to make target `Debug'.  Stop.

J'observe donc que les deux premiers fichiers (ou classe) compilés sont les deux premiers de la liste.

Ainsi est-il possible de résoudre ce problème de Makefile (le 'debug' qu'il ne trouve pas, et que je ne comprend malheureusement pas) ou bien l'ordre des fichiers compilés (afin qu'ils suivent la chaîne des liens vers la SFML depuis la classe principale) ?

Le plus étonnant est que même en ajoutant un #include <SFML\Graphics.gpp> dans la classe posant problème l'erreur persiste.

J'espère avoir été suffisamment clair, je vous remercie de m'avoir lu !
« Modifié: Décembre 08, 2014, 12:53:49 am par fayastone »

G.

  • Hero Member
  • *****
  • Messages: 1593
    • Voir le profil
Re : Compilation linux-->codeBlocks
« Réponse #1 le: Décembre 05, 2014, 01:33:14 am »
C'était SFML 1.6 ton vieux projet ?
Et la SFML que tu as compilée est >= 2.0 ?

A partir de la 2.0 la convention de nommage a changé, les méthodes commencent par une minuscule.
GetElapsedTime en 1.6 devient getElapsedTime en 2.0.

Tu risques aussi d'avoir d'autres choses à changer mais je ne sais plus lesquelles. ;)

fayastone

  • Newbie
  • *
  • Messages: 11
    • Voir le profil
    • E-mail
Re : Compilation linux-->codeBlocks
« Réponse #2 le: Décembre 05, 2014, 07:10:13 am »
Merci ! Je suis partagé entre le soulagement de voir que ce n'est pas plus compliqué  comme solution et la déception de m'être fait avoir là-dessus  ;D.

Je pensais l'avoir originellement développé en 2.0mais non. Après les topics sur internet à ce sujet devraient me guide pour réparer ça sans problème :)

Encore merci,

Cordialement, Faya.