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

Auteur Sujet: [résolu] problème de génération (cmake) & binding (codeblocks)  (Lu 3526 fois)

0 Membres et 1 Invité sur ce sujet

Tero

  • Newbie
  • *
  • Messages: 16
  • Digital artist : teroratsu.deviantart.com
    • Voir le profil
    • E-mail
[résolu] problème de génération (cmake) & binding (codeblocks)
« le: Septembre 14, 2015, 11:32:05 pm »
Bonsoir,

Pour vous expliquer d'où vient mon problème je vais d'abord vous expliquer les changement récents :
J'avais déjà la sfml (2.2) d'installée, sans soucis avec un vieux compilo (4.7 de gcc je crois) mais voulant utiliser une librairie qui réclamait au moins une version 4.9 pour compiler (SFGUI) j'ai mis à jour mon compilo vers la 5.1.
Jusque là aucun soucis, mon code ne compile plus, normal, mon compilo à changé, ça doit venir de ça.
Dans un premier temps j'ai dl les sources pour les "compiler" avec cmake mais j'ai eu les erreurs suivantes :


J'ai donc laissé de côté pour me tourner vers la version précompilé, 32bit, pour MingW (DW2), et là j'ai la même erreur qu'au moment du changement de compilo :


je dois vous avouer être très nul pour comprendre tout ça, ça fait pourtant plus d'un an que j'utilise la sfml sans soucis :/

Dans le même temps si ça peut aider, voilà les erreurs que j’obtenais quand j'essayais de faire la même manip mais pour SFGUI :


sur openclassroom on m'a conseillé pour cmake de réaliser le bidouillage suivant :
Citer
Généralement mingw32-make n'est qu'une copie "renommée" de make sous windows.

La raison de cette copie est assez obscure, mais, en gros, comme on compile Gcc pour windows avec MSYS( Minimalist System) il fallait absolument veiller à ce que le make d'une installation de Gcc (mingw, en fait) n'aille pas entrer en conflit avec le make de MSYS.

Fut un temps, en tout cas, où cela posait problème ;).  Si une installation correcte de Gcc ne vient qu'avec make et non mingw32-make, cela veut sans doute dire que le problème est résolu ;)

Enfin, si tu éprouves des problèmes de compatibilité au niveau de tes Makefile à cause de ce changement (aussi bienvenu soit-il), il "suffit" rajouter une copie (nommée ming32-make.exe) de make dans le dossier bin.  Cela résoudra tous les problèmes ;)

Mais je n'ai pas bien compris de quel sous dossier bin il parlait (celui de MingW probablement ?) j'ai essayé mais j'ai toujours les mêmes erreurs.

Le fait est que j'ai vraiment besoin de la SFML d'autant plus pour utiliser SFGUI pour un projet d'étude. Je code sous windows 10 mais à l'issu du projet, je recompilerai les sources sous linux (je sent que je vais m'amuser..). Enfin bref, si quelqu'un peut me donner deux trois pistes, je suis preneur, je compte plus les heures passées à chercher des réponses sur google et farfouiller dans les fichiers :)
« Modifié: Septembre 15, 2015, 04:55:12 pm par Tero »
French digital artist & programmer :

DeviantArt : teroratsu.deviantart.com
Facebook : facebook.com/Teroratsudeviantart

G.

  • Hero Member
  • *****
  • Messages: 1592
    • Voir le profil
Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #1 le: Septembre 15, 2015, 01:07:57 am »
Les "cannot find -lsfml-xxx-s-d" c'est que t'as probablement pas donné le chemin du répertoire lib à ton IDE, ou alors pas le bon ! Ou tu peux l'avoir donné pour le mode release mais pas pour le mode debug.

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #2 le: Septembre 15, 2015, 07:58:40 am »
En ce qui concerne CMake, es-tu certain qu'il est capable de trouver ton MinGW ? En l'occurence, est-ce que le chemin <.../MinGW/bin> se trouve dans la variable d'environnement PATH ? Il se passe quoi si tu renseignes la variable CMAKE_MAKE_PROGRAM manuellement ? Est-ce que d'autres exécutables de MinGW sont trouvés ou aucun ?
Laurent Gomila - SFML developer

Tero

  • Newbie
  • *
  • Messages: 16
  • Digital artist : teroratsu.deviantart.com
    • Voir le profil
    • E-mail
Re : Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #3 le: Septembre 15, 2015, 01:41:51 pm »
En ce qui concerne CMake, es-tu certain qu'il est capable de trouver ton MinGW ? En l'occurence, est-ce que le chemin <.../MinGW/bin> se trouve dans la variable d'environnement PATH ? Il se passe quoi si tu renseignes la variable CMAKE_MAKE_PROGRAM manuellement ? Est-ce que d'autres exécutables de MinGW sont trouvés ou aucun ?

Merci beaucoup !

Pour ce qui est de la config et la génération, renseigner la variable a réglé le problème pour la SFML et SFGUI.
Bon, par contre j'ai pas bien compris comment à partir du makefile généré on créé un projet codeblocks pour compiler tout ça ^^
Pour ce qui est du linkage, j'ai bien vérifié, les chemins sont bons, pas de différence avec l'ancienne version de, la sfml que j'utilisais. Je pense que ça vient du compilo, j'attend de voir une fois de nouveau la sfml compilée ! :)

En tout cas merci beaucoup Laurent, voilà déjà une bonne chose de faite.
French digital artist & programmer :

DeviantArt : teroratsu.deviantart.com
Facebook : facebook.com/Teroratsudeviantart

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #4 le: Septembre 15, 2015, 01:57:43 pm »
Citer
Bon, par contre j'ai pas bien compris comment à partir du makefile généré on créé un projet codeblocks pour compiler tout ça
Si tu veux un projet Code::Blocks et non un Makefile, il faut choisir "Code::Blocks project" et non "MinGW makefile" comme générateur dans CMake, tout simplement ;)
Laurent Gomila - SFML developer

Tero

  • Newbie
  • *
  • Messages: 16
  • Digital artist : teroratsu.deviantart.com
    • Voir le profil
    • E-mail
Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #5 le: Septembre 15, 2015, 02:30:35 pm »
du coup pour être moins bête dans ma vie, à quoi ça sert un makefile du coup ?
Là j'ai généré pour copdeblocks, j'ai compilé le projet mais j'ai pas vu beaucoup de modifications dans mon dossier '-'

Alors ma théorie c'est que pour les includes c'est le dossier source include et les libs sont celles créé après le coup compilo dans le dossier lib du build ?

Si c'est ça c'est plutôt chouette.

Ma seconde "théorie" (oui je suis stupide) c'est que le MingW Makefile servait en fait à build dirctement via MingW sans l'intermédiaire d'un ide.

En tout cas merci, je reviens vers vous si j'ai un autre soucis !
French digital artist & programmer :

DeviantArt : teroratsu.deviantart.com
Facebook : facebook.com/Teroratsudeviantart

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #6 le: Septembre 15, 2015, 02:56:46 pm »
Citer
Alors ma théorie c'est que pour les includes c'est le dossier source include et les libs sont celles créé après le coup compilo dans le dossier lib du build ?
Après avoir compilé il faut installer SFML, pour avoir une install propre similaire à ce que tu as quand tu télécharges SFML précompilé. Avec un makefile, c'est "make install", depuis Code::Blocks, il faut compiler le projet "INSTALL". Note que l'installation se fera dans le chemin indiqué dans CMAKE_INSTALL_PREFIX. Mais là je paraphrase le tutoriel...

Citer
Ma seconde "théorie" (oui je suis stupide) c'est que le MingW Makefile servait en fait à build dirctement via MingW sans l'intermédiaire d'un ide.
C'est tout à fait ça.
Laurent Gomila - SFML developer

Tero

  • Newbie
  • *
  • Messages: 16
  • Digital artist : teroratsu.deviantart.com
    • Voir le profil
    • E-mail
Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #7 le: Septembre 15, 2015, 03:44:36 pm »
J'ai la forte impression qu'il me manque encore des lib ^^

Tout à bien marché après le make (désolé, j'ai pas lu jusqu'au bout :pastaper:) il me manque juste 2 libs que j'avais sous la SFML-2.2 et qui font mal à mon compilo : glew et sndfile, un simple copier coller et c'est bon ou je risque d'avoir des problèmes de compatibilité un jour ?
French digital artist & programmer :

DeviantArt : teroratsu.deviantart.com
Facebook : facebook.com/Teroratsudeviantart

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32504
    • Voir le profil
    • SFML's website
    • E-mail
Re : problème de génération (cmake) & binding (codeblocks)
« Réponse #8 le: Septembre 15, 2015, 04:14:12 pm »
Il n'y a plus besoin de ces deux-là avec SFML 2.3.
Laurent Gomila - SFML developer

G.

  • Hero Member
  • *****
  • Messages: 1592
    • Voir le profil
Re : [résolu] problème de génération (cmake) & binding (codeblocks)
« Réponse #9 le: Septembre 15, 2015, 05:55:37 pm »
Par contre il y en a d'autres (vorbis, ogg, etc.) en 2.3 qui n'étaient pas là à la 2.2 mais elles sont toutes dans le tutoriel. ;)

Tero

  • Newbie
  • *
  • Messages: 16
  • Digital artist : teroratsu.deviantart.com
    • Voir le profil
    • E-mail
Re : [résolu] problème de génération (cmake) & binding (codeblocks)
« Réponse #10 le: Septembre 15, 2015, 06:05:06 pm »
vous inquiétez pas, j'ai tout bien bind et la sfml fonctionne comme sur des roulettes, ogg, flac et tout ;)

place à sfgui :|

On va éviter le double post, c'est bon tout est réglé, j'ai généré et bind sfgui tout marche bien et c'est la fête :D

« Modifié: Septembre 15, 2015, 06:35:13 pm par Tero »
French digital artist & programmer :

DeviantArt : teroratsu.deviantart.com
Facebook : facebook.com/Teroratsudeviantart