Forum Programmation.c++ faire du c++ sous linux ?

Posté par .
Tags : aucun
3
16
déc.
2008
Bonjour,
voilà, je voudrais faire du développement sous Linux. Autant je me débrouille pour la partie algorithmie mais tout ce qui est chaîne de compilation, j'avoue que ce n'est pas mon fort.

Voilà, j'ai un petit projet c++ d'une 20aine de fichiers .cpp et .h et j'aimerai bien compiler ça sous linux avec gcc, j'ai déjà installé le package gcc-c++ ainsi que make et sdl-devel, mais là... au moment de faire le makefile j'avoue que je suis coincé.

Autant je connais le principe du makefile, autant je suis incapable d'en faire un dans les regles de l'art.
J'aimerai bien produire le nécessaire pour qu'un "./configure && make && make install" fonctionne au poil. Mais j'en suis pas capable.

Avez vous des ressources, des astuces, des idées, des conseils, ou même simplement un point de depart !

L'objectif n'est pas de faire de moi un vrai pro du makefile (autant j'ai une passion de pour développer, autant la chaîne de compilation me passionne moins, c'est qu'un outil pour moi)
L'idée, est que je puisse faire un makefile simple (que je puisse ajouter une classe, donc un fichier .cpp et .h sans que je sois trop perdu).

La particularité est que j'utilise une lib : sdl (enfin 4 pour être précit : sdl, sdl_mixer, sdl_ttf et sdl_image)
ha... et puis la stdlib bien sûr (std::)

D'avance, merci.

Voilà, à votre bon coeur.
  • # autotools

    Posté par . Évalué à 2.

    pour une version 0.01 pré alpha, tu peux regarder là :
    http://www.evl.uic.edu/arao/cs594/sdlglsl.html

    Si tu veux un ./configure qui aille vérifier que SDL est bien présent avec les en-tête dans ta besoin dans la version qu'il te faut ... il faut jeter un oeil sur autoconf, automake (dans les autotools).
    C'est peut-être un chouille plus compliqué mais comme je n'ai pas beaucoup pratiqué, je laisse d'autres élaborer.
    • [^] # Re: autotools

      Posté par . Évalué à 2.

      en fait, c'est peut-être mieux d'aller voir ici :
      http://david.acz.org/sdl.html

      (pour info, la requête google, c'est makefile+skeleton+sdl)
    • [^] # Re: autotools

      Posté par . Évalué à 2.

      sinon, je précise, au cas où : je n'utilise pas OpenGL.
      c'est old style, pas 3D (oui même si je sais qu'on peut faire de la 2D pur avec openGL)

      Merci pour les liens.
  • # cmake

    Posté par . Évalué à 10.

    alors si la chaîne de compilation ne t'intresse pas évite peut-être les autotools… C'est assez prise de tête…

    Dans le genre performant et assez simple, disponible partout (linux, windows…) il y a cmake :
    http://www.cmake.org/
    • [^] # Re: cmake

      Posté par . Évalué à 2.

      ok, je suis en train de regarder...
      Mais j'ai une question tout bête :
      Quand je vais distribuer mes sources, est-ce qu'il y a besoin d'installer un truc particulier (cmake) sur le poste de celui qui voudra compiler (j'imagine qu'il n'y a pas d'étape "configure" ?)

      Merci.
      • [^] # Re: cmake

        Posté par . Évalué à 4.

        Oui. cmake génère des Makefile qui servent ensuite à la génération du projet.
        Mais c'est assez courant. Si jamais ils n'ont pas/ne veulent pas installer cmake, il y a moyen de fournir les Makefile générés par cmake justement (enfin il me semble)
        • [^] # Re: cmake

          Posté par . Évalué à 2.

          est-il possible de mettre un joker pour les sources ?
          par exemple *.cpp
          au lieu de
          SET ( SRC premierfichier.cpp deuxieme.cpp troisieme.cpp )
          je ne crois pas avoir vu ca dans la FAQ.

          sinon cmake ca a l'air vraiment bien, je crois que je vais partir la dessus.
      • [^] # Re: cmake

        Posté par . Évalué à 3.

        « (j'imagine qu'il n'y a pas d'étape "configure" ?) »

        Si ! en fait pour compiler en général tu va faire tes sources tu vas faire :
        mkdir build && cd build
        cmake ../source/
        make
        make install

        cmake vas configurer ton projet et générer les Makefile qui vont bien sous linux.

        Pour compiler ton projet les gens auront besoin effectivement d'installer cmake avant.
      • [^] # Re: cmake

        Posté par (page perso) . Évalué à 2.

        Oui, il devra installer un cmake

        Normalement il aura juste a se rendre dans le répertoire et taper make && make install.

        Un script make appellera cmake configure et cmake tout seul

Suivre le flux des commentaires

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