Finalement, je suis repassé à une licence zlib (ce qui correspond aux autres extensions de GD).
C’était pas le cas avant, j’ai tout réorganisé.
Finalement, je suis repassé à une licence zlib (ce qui correspond aux autres extensions de GD).
C’était pas le cas avant, j’ai tout réorganisé.
Je viens d’essayer de recompiler, mais il me manque des répertoires d’inclusions.
Normalement, je met dans les options du projet les répertoires communs à toutes les cibles, à savoir :
Pour le compilateur :
…\GDL
…\ExtLibs\SFML\include
…\ExtLibs\boost
et pour le linker :
…\ExtLibs\SFML\build-mingw-debug\lib
…\ExtLibs\SFML\build-mingw-release\lib
( En fait, ces deux derniers chemins sont spécifiques à Windows, il serait normalement logique d’ajouter uniquement …\ExtLibs\SFML\build-mingw-debug\lib aux cibles Windows et en debug, et …\ExtLibs\SFML\build-mingw-release\lib aux cibles Windows et en release ou dev ).
Dans ton fichier projet, je pense qu’il manque essentiellement ces répertoires d’inclusions ( tu peux éventuellement les adapter vu que tes sources sont situés un peu plus “loin” dans l’arborescence ). Les cibles ont chaque bien l’air d’avoir tous les répertoires/bibliothèques qui leur sont spécifiques, de ce coté c’est bon.
Oui, mais ça fait partis du GDLSDK.
Je pensais plutôt faire que le développeur télécharge le GDLSDK puis télécharge l’extension dans un sous-dossier de GDLSDK\Extensions comme indiqué dans le README :
J’avais pensé à mettre les bibliothèque du GDLSDK dans extlibs de mon extension, mais je sais pas si ça va être facile à mettre à jour.
Si tu veux participer à l’extension, tu peux utiliser le bouton “Fork” situé en haut de la page (en étant au préalable inscrit sur Github). Ce bouton permet de te créer un répository où tu as tous les droits vu que c’est un fork. Ensuite, il te suffira d’envoyer un pull request (il y a un bouton pour ça) pour me proposer directement un patch avec les modifications.
C’est ce que je fais, à part que je n’utilise pas le GDLSDK mais directement le répertoire de GD. ( Le SDK est construit à partir du répertoire de développement de Game Develop, en copiant juste les fichiers nécessaires, mais sinon c’est la même structure. )
Enfin, à moins que je n’ai mal compris tes explications, mais le principe pour moi est que chaque extension se place dans le dossier “Extensions” de GDLSDK. Mais il n’empêche qu’on a quand même besoin de configurer les chemins que j’ai indiqué ci dessus non ?
Ca risque d’être un peu galère et d’embrouiller le tout.
Le plus simple à mon avis est toujours d’avoir le dossier GDLSDK, et l’extension située dans le dossier Extensions de GDLSDK. ( Mais si j’ai bien compris, c’est aussi ce que tu fais de toute façon )
Ok, je vais regarder ça.
Je comprends pas, normalement, ça devrait marcher directement vu que ce sont des répertoires relatifs, non ?
EDIT : Les répertoires d’inclusions dans mon projet ont 3 “…/” parce que le projet est dans le sous-dossier src/ et doit y rester.
Oui, c’est pas un problème de répertoire relatif ou non :
Ce que j’ai fais, c’est :
-J’ai récupéré les sources
-Je les ai placé dans le répertoire Extensions de GDLSDK. ( Enfin de GD chez moi, mais c’est n’est qu’une version plus complète de GDLSDK ).
-J’ouvre le projet de l’extension Widgets avec Code::Blocks. Je clique sur compiler et il me dit qu’il ne trouve pas GDL/ExtensionBase.h
Je vais voir dans les options du projet, et je vois qu’en effet il n’y a nul part une référence à un répertoire d’inclusion comme …..\GDL ( et qu’il n’y a nul part en fait les répertoires que j’ai cité plus haut ).
Donc forcément ça compile pas.
D’ailleurs, je sais pas comment ça peut marcher chez toi sans
Normalement, chaque extension spécifie tout les répertoires d’inclusions dont elle a besoin : Tu pourra vérifier que chaque extension fournie dans GDLSDK spécifie bien les répertoires que j’ai cité plus haut, au niveau des options de compilation du projet.
Oui, de ce coté ça me pose absolument aucun soucis, mais il manque ( à moi en tout cas ) toujours 3 répertoires d’inclusions. ( Et qui devraient être :
…....\GDL
…....\ExtLibs\SFML\include
…....\ExtLibs\boost
)
[attachment=0]linkerWidgets.png[/attachment]
Ce n’est pas le fait que j’utilise une autre config de compilation qui foire tout ?
Ah oui étrange en effet, je vais retélécharger le projet pour plus de sureté.
Je me disais aussi que c’était pas possible que t’arrive à compiler sans
C’est peut être du au fait que tu utilise un compilateur “personnalisé” et que quand j’en ai choisi un autre, ça a tout cassé à ce niveau. ( Etrange quand même, enfin bref ! )
Ne t’embête pas, je vais remettre “GNU GCC Compiler” en compilateur et je vais le configurer pour utiliser la bonne version de MinGW.
Bon au final j’ai repris le projet d’origine, rechangé le compilateur et cette fois ci les répertoires sont corrects. Bizarre, je pense que Code::Blocks s’est emmêlé les pinceaux la dernière fois.
Aussi, l’extension compilée se trouve dans le sous-dossier /build .
Voilà mieux, maintenant c’est wxWidgets qui perd la boule :
Voilà qu’il ne connait même plus les fonctions standards. Peut être est ce toujours lié à cette histoire de changement de compilateur…
Non, c’est à cause de C++11, chez moi, j’ai enlevé un #define et ça marche.
Mais en fait, SFGUI n’utilise plus le C++11 maintenant, retire -std=c++0x des options de compilation et ça devrait marcher.
Ah d’accord, j’avais pourtant cherché mais j’avais pas pensé à regarder du coté des options du compilateur. Quel define au passage ?
Ça compile nickel maintenant
Rien à voir avec ce que vous dites mais bon:
Depuis que l’extension est dispo sur GD 2.0.10541 les anciens objet de l’extension ne sont plus reconnue… il faut en refaire des nouveau
(en français il faut en recréer car dans les éditeur d’objet il est blanc et non reconnue)
Ca marche très bien chez moi…
[size=150]Mise à jour[/size]
L’extension Widgets 1.1RC vient de sortir.
Nouvelles fonctionnalités :
Téléchargement :
http://widgets.levasseursoftware.net/?page=download
Attention : Ne criez pas au bug quand vous verrez qu’il faut maintenir le clic pour laisser la liste déroulante déroulée, c’est normal.
Tu penses à qui quand tu dis ça ? ^^
A personne en particulier je pense, car c’est vrai que c’est pas ultra intuitif de devoir rester cliquer.
Non, il pense a moi