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

Auteur Sujet: Erreur de compilation avec g++ sous Debian [2.1]  (Lu 2423 fois)

0 Membres et 1 Invité sur ce sujet

Iris

  • Newbie
  • *
  • Messages: 2
    • Voir le profil
Erreur de compilation avec g++ sous Debian [2.1]
« le: Avril 30, 2014, 07:22:51 pm »
Bonjour, je suis sous Debian (Wheezy), et je viens d'installer SFML 2.1.
Au début, je l'avais installée en copiant les fichiers du SDK manuellement (car le paquet Debian est en 1.6), mais la compilation de l'exemple du tutoriel 2.1(http://www.sfml-dev.org/tutorials/2.1/start-linux-fr.php) pour g++ me donnait ces erreurs :
g++ -c main.cpp
main.cpp: In function ‘int main()’:
main.cpp:6:5: error: ‘CircleShape’ is not a member of ‘sf’
main.cpp:6:21: error: expected ‘;’ before ‘shape’
main.cpp:7:5: error: ‘shape’ was not declared in this scope
main.cpp:9:19: error: ‘class sf::RenderWindow’ has no member named ‘IsOpen’
main.cpp:12:23: error: ‘class sf::RenderWindow’ has no member named ‘pollEvent’
main.cpp:14:23: error: ‘class sf::Event’ has no member named ‘type’
main.cpp:15:24: error: ‘class sf::RenderWindow’ has no member named ‘close’
main.cpp:18:16: error: ‘class sf::RenderWindow’ has no member named ‘clear’
main.cpp:19:16: error: ‘class sf::RenderWindow’ has no member named ‘draw’
main.cpp:20:16: error: ‘class sf::RenderWindow’ has no member named ‘display’
 
Même chose en ajoutant des options pour indiquer le chemin des .hpp à g++.
Donc, j'ai supprimé l'installation, et réinstallé SFML avec CMake. L'installation a fonctionné, mais j'ai toujours les mêmes erreurs à la compilation ...
J'ai aussi essayé avec l'exemple du tutoriel 1.6, pour voir si ce n'était pas la mauvaise version ... Évidemment, ça ne compile pas, j'ai bien la bonne version.
Quelqu'un a une idée ?
Merci pour vos réponses.  :)

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : Erreur de compilation avec g++ sous Debian [2.1]
« Réponse #1 le: Avril 30, 2014, 11:21:55 pm »
Non, vu les erreurs ce n'est clairement pas SFML 2.
Laurent Gomila - SFML developer

Rodd

  • Newbie
  • *
  • Messages: 43
    • Voir le profil
    • E-mail
Re : Erreur de compilation avec g++ sous Debian [2.1]
« Réponse #2 le: Mai 01, 2014, 12:16:05 pm »
Il vaut toujours mieux télécharger la dernière version en cours sur GitHub..


Donc, j'ai supprimé l'installation, et réinstallé SFML avec CMake.
et générer le makefile soit même via CMake ! Et après tu dois aller toi même dans le dossier généré via ta console et compiler ensuite avec make puis make install. (dans le doute... :) )

main.cpp:6:21: error: expected ‘;’ before ‘shape’
main.cpp:7:5: error: ‘shape’ was not declared in this scope
 
Corrige déjà ces erreurs..

Iris

  • Newbie
  • *
  • Messages: 2
    • Voir le profil
Re : Erreur de compilation avec g++ sous Debian [2.1]
« Réponse #3 le: Mai 04, 2014, 02:58:12 pm »
Oui, j'avais généré le makefile :)
Le code est exactement l'exemple du tuto, donc je pense que les erreurs étaient là parce que le CircleShape ne pouvait pas être déclaré ...
J'ai essayé de recommencer l'installation avec CMake, avec la dernière version, mais ça ne fonctionnait toujours pas. Ensuite, j'ai supprimé tout ça pour réinstaller simplement avec le paquet testing (qui est en version 2), mêmes erreurs ... J'ai regardé les headers dans /usr/include/, ce sont les mêmes que ceux de la 2.1. Sauf qu'en essayant l'exemple du tuto 1.6, la compilation se passe bien, mais il y a des erreurs avec le linker ... En fait, il y avait les anciens headers de SFML 1.6 dans /usr/include/c++/4.7/SFML : en supprimant ce dossier SFML ... ça fonctionne en 2.1 !  :D
(Je crois que g++ ignorait les arguments avec -I ...)
Merci !