Forum Programmation.c Débuter un nouveau projet

Posté par  .
Étiquettes : aucune
0
22
juin
2006
Bonjour tout le monde,

Je souhaite commencer un nouveau projet en C utilisant GTK2 sous GPL. Bon, le C je connais plus ou moins. Pour GTK2, il va falloir apprendre. Et c'est justement ça le but du projet, apprendre GTK2 et surtout comment créer un projet avec tout ce qu'il faut pour qu'il soit partager avec tout le monde.

Mes questions sont donc :
- Connaissez-vous des how-to pour commencer un projet en C ?
- Existe-t-il des squelettes contenant la base d'un projet ? Du style, mettre les sources ici, puis faire ./configure && make && make install

En fait, ce n'est pas (encore) le développement en C qui me pose problème, mais tout ce qui va autour : le script ./configure, le makefile, comment faire du GPL,...

J'ai déjà trouvé la page suivante, mais elle ne répond pas à toutes mes questions :
http://www.gnu.org/prep/standards/standards.html

Merci d'avance pour vos réponses. Bonne journée.
  • # ca traine sur le forum ...

    Posté par  (site web personnel) . Évalué à 3.

    http://linuxfr.org/forums/14/16955.html

    Adhérer à l'April, ça vous tente ?

    • [^] # Re: ca traine sur le forum ...

      Posté par  . Évalué à 1.

      Merci d'avoir répondu !

      Cependant, ce n'est pas le genre de réponse que j'attendais (ma faute, je n'ai pas forcement été très clair dans mes questions). J'aurais très bien pu commencer un nouveau projet en C++/Qt, mon problème aurait été le même. Là où je suis perdu, c'est pour tout ce qu'il y a autour du code source : comment fonctionne et à quoi sert le script configure, les bonnes règles à utilisées pour le makefile, ce qu'il faut faire pour mettre le projet sous GPL, etc.

      Je te remercie quand même pour ta réponse, j'ai découvert des liens intéressants pour GTK ;-)
  • # Est-ce vraiment une bonne idée ?

    Posté par  (site web personnel) . Évalué à 3.

    J'aurais tendance à dire : à chaque projet son langage. Le C est un langage passionnant et il existe des domaines où il est pour le moment sans égal comme la programmation dans le noyau, de pilotes, la recherche de performances, ou dans une moindre mesure dans l'embarqué.

    Mais il a aussi ses défauts : gestion de mémoire à la main, risques de dépassement de tampons... Comme tu parles d'un projet en GTK, il y a peut-être un langage plus approprié :
    - Python/Perl (si tu ne cherches pas la vitesse)
    - Java (même si ce n'est pas encore 100% libre, pas de GTK en natif)
    - ObjectiveC (même si pas de ramasse-miettes)
    - Eiffel (il faut appréhender la syntaxe, et je ne sais pas où en sont les bindings GTK)
    - C++ (il faut aimer...)

    Bref, ce n'est bien sûr que mon avis, si tu veux apprendre le C, il y a plein de trucs sympa à faire mais si tu veux jouer avec GTK, le C ne me semble pas le meilleur langage.
    • [^] # Re: Est-ce vraiment une bonne idée ?

      Posté par  . Évalué à 1.

      Concernant le choix du C, je suis d'accord avec toi, ce n'est pas forcement la meilleure idée. Mais bon, j'ai envie de faire C, ne me demandez pas pourquoi :-)

      Python me semble très intéressant et je n'en entends que du bien. C'est dans ma liste des trucs à approfondir un jour. Par contre, pour les autres langages que tu cites, ils ne m'attirent pas trop... Peut-être plus tard.
      • [^] # Re: Est-ce vraiment une bonne idée ?

        Posté par  . Évalué à 3.

        Euh, en parlant d'allocation mémoire à la main, y a pas un truc dans la glib qui facilite ça?
        Va falloir que je déterre mes vieux GLMF: il y avait une série d'article sur le sujet.

        Sinon pour les "make" et compagnie, il y a justement une série d'articles en cours dans GLMF.
  • # Méthode flemmard...

    Posté par  (site web personnel) . Évalué à 2.

    Si tu utilise kde, lance kdevelop, c'est un bon IDE, et il te créera a peu près tout seul tes Makefile/configure/etc
    (pour peu que tu lui ajoute les dépendance de libs et autre)

    Il possède aussi un certains nombre de projet dispo (hello world gtk par exemple).

    Après tu peux très bien ne pas l'utiliser pour programmer ton code, je trouve juste très pratique de prog avec lui...

    Vala, pour gnome il existe glade et compagnie, mais j'ai pas testé donc je peux juste te citer le nom...
    • [^] # Re: Méthode flemmard...

      Posté par  . Évalué à 1.

      Bien vu pour kdevelop, je n'y avais pas du tout pensé ! Vu que j'utilise gvim dans un environement xfce4/gtk, je n'ai pas le reflex d'aller voir ce que propose kde ou les applis en qt. Je vais quand même l'installer pour voir ce qu'il peut m'apporter.
    • [^] # Re: Méthode flemmard...

      Posté par  . Évalué à 4.

      C'est la méthode qui ne t'apprend rien ça.

      Personnellement ce genre d'outil je préfère l'utiliser quand j'ai compris ce qui se passe en dessous.
      • [^] # Re: Méthode flemmard...

        Posté par  (site web personnel) . Évalué à 2.

        Heu pas trop, tu peux très bien aller voir les zolis Makefile.am qui sont générés, c'est très instructif !!!

        Et contrairement a ce que tu peux penser, je trouve qu'il est souvent plus pratique d'utiliser pragmatiquement un programme genre kdevelop pour gérer les choses, et ensuite après aller voir comment marche le projet...

        C'est ce que j'ai toujours fait, en commençant sous mandriva et ça m'a bien réussi...
        (tout avis personnel étant subjectif par nature, vous êtes libre de penser le contraire et de faire autrement)
  • # Tutoriels pour GTK

    Posté par  (site web personnel) . Évalué à 5.

    Bonjour,

    Tu trouveras à cette adresse comment faire un "hello world" en GTK avec une gestion du projet par les autotools :
    http://bo.majewski.name/bluear/gnu/GTK/plain/index.htm

    Et une petite amélioration pour internationaliser ton projet :
    http://bo.majewski.name/bluear/gnu/GTK/i18n/index.htm

    Ensuite, il y a le tutoriel officiel de GTK :
    http://www.gtk.org/tutorial/
    Il explique et donne des exemples pour différents widgets.

    Après je ne peux que te conseiller de lire au fur et à mesure de tes besoins les doc des API de Glib et GTK (http://developer.gnome.org/doc/API/2.0/gtk/index.html et plus généralement http://www.gtk.org/api/ ).

    Quand tu commenceras à maitriser le GTK, tu auras envie d'étendre ou de créer de nouveaux widgets. Il y a dans les archives du Gnome Journal, http://www.gnomejournal.org/archives/ , deux articles sur la façon de créer soit-même des widgets nouveaux (journaux de décembre et février dernier).

    Enfin pour bien comprendre la façon dont les widgets s'imbriquent entre eux (le positionnement...), je te conseille aussi d'utiliser Glade (http://glade.gnome.org/ ). Tu peux réaliser rapidement des interfaces avec, tester différents placements, ensuite libre à toi de t'inspirer du code généré pour écrire le tien, le garder tel quel ou enfin utiliser libglade pour charger directement le XML décrivant ton interface.
    • [^] # Re: Tutoriels pour GTK

      Posté par  . Évalué à 1.

      Parfait ! Merci pour tes liens vers les exemples "hello world", c'est exactement ce que je cherchais.

      Je bookmark également le reste, ce sera toujours pour la suite !
  • # cmake

    Posté par  . Évalué à 2.

    Évite les autotools si tu le peu et si tu es très débutant (ou alors tu as beaucoup de temps). Je te conseillerais CMAKE, qui marche très bien et est simple !! (veille à installer la version 2.4 ou plus).

    Rq :
    il existe encore d'autres outils pour faire des Makefile (scon par exemple), je te donne simplement celui que je préfère :-)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.