Voilà un petit rapport d'expérience d'applis multi-plateformes en...C.
Le projet était de développer un outil de configuration graphique (souris, menu, bouton...) permettant de configurer un modèle océanique de vagues sous Linux (et sous Windows, au cas ou).
Le langage était donc le C, la librairie graphique Gtk2 avec la palette d'outils suivante:
- Glade, qui s'est révélé indispensable, l'interface compte la bagatelle de 1500 widgets
- MinGW et MSYS, pour windows qui t'offre un compilateur gcc "natif" (sans couche intermédiaire comme peut en offrir cygwin) et un environement UNIX-like (bash, ls, make...)
- UNIX est un environement de développement en soi donc pas d'IDE particuliers (vim + cmd UNIX + pipe + script shell = bonheur)
- Un petit CVS au milieu permet de développer indifférement sur Windows ou sur Linux (ou plutôt de faire des "cvs update; make" sur Windows)
J'ai donc construit l'interface intégralement avec Glade (le fichier glade pèse son Méga octet). L'auto-connection évenements/fonctions callbacks depuis Glade fonctione merveilleusement bien sous Linux et sous Windows... (en déclarant les fonctions callbacks __declspec(dllexport) pour windows).
L'ensemble pèse 11500 lignes. 50 lignes de code sont dédiées à windows (pour les I/O).
# Une expérience.
Posté par dcp . En réponse au journal Développement multi-plateformes. Évalué à 10.
Le projet était de développer un outil de configuration graphique (souris, menu, bouton...) permettant de configurer un modèle océanique de vagues sous Linux (et sous Windows, au cas ou).
photo (sous win): http://dpithon.free.fr/gtkwin.jpg(...)
Le langage était donc le C, la librairie graphique Gtk2 avec la palette d'outils suivante:
- Glade, qui s'est révélé indispensable, l'interface compte la bagatelle de 1500 widgets
- MinGW et MSYS, pour windows qui t'offre un compilateur gcc "natif" (sans couche intermédiaire comme peut en offrir cygwin) et un environement UNIX-like (bash, ls, make...)
- UNIX est un environement de développement en soi donc pas d'IDE particuliers (vim + cmd UNIX + pipe + script shell = bonheur)
- Un petit CVS au milieu permet de développer indifférement sur Windows ou sur Linux (ou plutôt de faire des "cvs update; make" sur Windows)
J'ai donc construit l'interface intégralement avec Glade (le fichier glade pèse son Méga octet). L'auto-connection évenements/fonctions callbacks depuis Glade fonctione merveilleusement bien sous Linux et sous Windows... (en déclarant les fonctions callbacks __declspec(dllexport) pour windows).
L'ensemble pèse 11500 lignes. 50 lignes de code sont dédiées à windows (pour les I/O).
J'ai produit un petit doc pour l'installation et l'utilisation de GTK2/LibGlade sur Win32 ici -> http://www.boost-technologies.com/gtkwin/(...)
Au cas ou ça interesserait quelqu'un