IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

[Code::Blocks] Avalanche d'avertissemnts à cause de la SFML


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut [Code::Blocks] Avalanche d'avertissemnts à cause de la SFML
    Bonjour,

    J'ai récemment installé SFML et configuré Code::Blocks pour l'utiliser. Oh, tout fonctionne parfaitement bien. Seulement, je reçois à chaque compilation toute une flopée d'avertissements qui viennent des fichiers de la SFML.



    C'est plutôt gênant pour voir les problèmes qui viennent de mon code...et on est d'accord que je ne vais pas juste désactiver ces messages pour être tranquille ! (en plus j'ai essayé de désactiver les message de Weffc++, ça n'a rien changé)
    Alors par exemple certains messages parlent de destructeurs non virtuels. Je pourrais modifier le code de la SFML mais je préfère ne pas m'y risquer...Et puis, pour la majorité, il est question d'un problème avec des pointeurs membres ; je ne comprend même pas ce que disent ceux-ci, d'ailleurs.

    Si quelqu'un a une solution...Merci d'avance de me la donner.

  2. #2
    Membre Expert Avatar de Ehonn
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    788
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 788
    Par défaut
    Bonjour

    Pour ce genre de choses, je t'encourage à poster directement sur le forum de la SFML. Éventuellement, tu pourras même proposer de faire un merge request pour corriger ceci.

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci j'y vais de suite, mais...un "merge request" ? Qu'est-ce que tu entends par là ?

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Note pour l'erreur: Vu qu'on ne référence jamais virtuellement NonCopyable (enfin, ça m'étonnerait qu'on le fasse), son destructeur devrait être protected non-virtuel. Et si GCC geule toujours dessus, alors c'est un bug dans -Weffc++ et c'est chez GCC qu'il faut se plaindre.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 153
    Billets dans le blog
    4
    Par défaut
    C'est des warning, tu n'as pas à t'en soucier.
    Pourquoi ne pas utiliser directement les binaires compilés ?
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  6. #6
    Invité
    Invité(e)
    Par défaut
    Oui ce ne sont que des warnings, mais comme je le disais, il y en a tellement que j'ai du mal à voir les miens...
    Les binaires compilés ? (désolé d'être un gros inculte ^^') Moi j'ai fait comme sur sur le tuto officiel...Et comme ça fonctionne, je n'ai pas cherché plus loin.
    (si ça peut être utile j'utlise GCC 4.7.1)

  7. #7
    Membre Expert Avatar de Ehonn
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    788
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 788
    Par défaut
    Citation Envoyé par Neoflash Okashi Voir le message
    Merci j'y vais de suite, mais...un "merge request" ? Qu'est-ce que tu entends par là ?
    Gitorious.org et GitHub offre des dépôts git, un logiciel de gestion de versions (décentralisé). Lorsqu'on veut proposer une modification, il est courant de cloner le dépot contenant le code source, faire la modification et la proposer pour la fusionner avec le dépôt original. Faire la proposition de fusion est appelé merge request sur Gitorious.org et pull request sur GitHub.


    Citation Envoyé par Bousk Voir le message
    C'est des warning, tu n'as pas à t'en soucier.
    Pas de façon générale
    Les warnings sont importants car il peuvent détecter de vrais erreurs (par exemple : utilisation sans initialisation).

    Citation Envoyé par Bousk Voir le message
    Pourquoi ne pas utiliser directement les binaires compilés ?
    Je n'ai pas vérifié ce que fait la SFML, mais une classe comme sf::NonCopyable me parait être un bon candidat pour être header-only.

    Citation Envoyé par Neoflash Okashi Voir le message
    Les binaires compilés ?
    Un début de réponse : Wikipédia - Bibliothèque logicielle.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Oui, j'aime les warnings (merci le compilo de me rappeler que je dois initiliser variables et pointeur même si j'ai la flemme, par exemple)

    La SFML (Simple and Fast Multimedia Library) se veut une alternative orientée objet à la SDL.
    Oui, NonCopyable est header-only, même si je ne sais pas si cette information change quoi que ce soit.

    Quand à la page wikipedia, désolé de te dire qu'elle ne m'a pas appris grand-chose — je ne suis pas débutant à ce point.

  9. #9
    Membre Expert Avatar de Ehonn
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    788
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 788
    Par défaut
    Par « binaires compilés », Bousk parlait probablement des bibliothèques déjà compilées disponibles sur le site de la SFML (.so, .a, .dll).

    Si des warnings sont dus au code source de la bibliothèque :
    - soit c'est dans les headers et tu as le warning
    - soit c'est dans le code déjà compilé (la bibliothèque linkée) et tu n'as pas de warning (lors d'une utilisation "classique" de la bibliothèque)
    (Voilà ce que ça change pour les warnings.)

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 153
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par Ehonn Voir le message
    Pas de façon générale
    Les warnings sont importants car il peuvent détecter de vrais erreurs (par exemple : utilisation sans initialisation).
    Ce sont des warning internes à la lib, donc on s'en moque. Une lib est sensée remplir sa fonction correctement, tu la prends telle qu'elle et lui fais confiance. Si tu fais pas confiance à une lib, tu ne l'utilises pas.
    S'attarder sur ce genre de warning est une pure perte de temps.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  11. #11
    Invité
    Invité(e)
    Par défaut
    Je ne sais pas si tu as suivi mais la question n'est pas de se demander pourquoi il y a ces warnings mais justement de les faire disparaître...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Compiler glu.h sous Code::Blocks
    Par allanp8 dans le forum OpenGL
    Réponses: 10
    Dernier message: 18/11/2007, 00h56
  2. Code blocks ajouter un .lib
    Par gl0be dans le forum Code::Blocks
    Réponses: 7
    Dernier message: 09/09/2006, 15h04
  3. [Code::Block] Traduction francaise?
    Par Zenol dans le forum Code::Blocks
    Réponses: 3
    Dernier message: 20/02/2006, 16h06
  4. [code::blocks] Completion de code
    Par anykeyh dans le forum Code::Blocks
    Réponses: 1
    Dernier message: 20/12/2005, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo