Pages : 1
#1 Le 03/05/2010, à 12:41
- katian
Bien structurer un projet c++
Bonjour,
Je fais du développement c++ en amateur.
J'aimerai bien faire les choses et je cherche des infos sur comment structurer un projet. J'aimerai aussi bien comprendre "configure" et "make".
P.S : Je souhaite utiliser vim et laisser tomber Code::Blocks
Pourriez-vous me conseiller ?
merci !
Hors ligne
#2 Le 03/05/2010, à 13:30
- helly
Re : Bien structurer un projet c++
Pour faire simple , "configure" prend en compte les paramètres de ta machine pour vérifier si toutes les dépendances sont présentes , puis créé un Makefile adéquate ,
"make" execute simplement le fichier Makefile .
Je n'ai jamais créé de fichier config mais déjà quelques Makfiles , ça peut en effet être interessant pour automatiser la compilation du gros projets avec beaucoup de lib
Donc pour les makefiles y'a des bons tutos sur le web , assez facilement trouvables
Que te demandes tu à propos de la structure des projets ? j'ai du mal à comprendre la question ^^'
ET pour la dernière question , je tourne avec vim et en effet y'a rien de mieux (argument subjectif),deplus il me semble avoir entendu dire que code::blocks créé des projets qui ne respectent pas les standars , donc vaut mieux éviter
Archlinux-wmii-dwb.
Un problème résolu ? Faites le savoir en mettant [résolu] à côté du titre de votre topic.
Un problème non résolu ? Faites le savoir en insultant ceux qui cherchent à vous aider.
Un site bleu super remasterised©, un wiki cherchant des volontaires pour traduire un site.
Hors ligne
#3 Le 03/05/2010, à 13:57
- Le Farfadet Spatial
Re : Bien structurer un projet c++
Salut à tous !
[Troll]
je tourne avec vim et en effet y'a rien de mieux
C'est faux, Emacs est bien meilleur !
[/Troll]
il me semble avoir entendu dire que code::blocks créé des projets qui ne respectent pas les standars
Là, je suis prêt à reconnaitre que, au moins dans ce fil de discussion, c'est moi qui ai commencé !
Cela dit, je vais essayer de donner un peu plus d'éléments à Katian.
Difficile de dire dans l'absolu comment bien structurer un projet C++, cela dépend du projet. Bien structurer un projet demande de l'expérience, donc il faut en réaliser plusieurs. Ce que l'on peut dire, c'est qu'il est préférable que l'organisation des fichiers et des répertoires reflètent la structure interne du projet.
Dans un premier temps (tu feras évoluer l'organisation ensuite), tu peux découper ton répertoire en plusieurs sous-répertoires :
-- « src » pour stocker les sources ;
-- « build » pour stocker les objets et exécutables finaux ;
-- « dbg » pour la version de déboguage ;
-- « doc » pour les documents.
Concernant les autotools, qui permettent de réaliser la séquence « ./configure », « make », puis « sudo make install », il existe un livre à leur sujet.
Toutefois, les autotools sont compliqués et ne fonctionnent pas sur toutes les plateformes -- typiquement, pas sur Windows, enfin pas de manière immédiate. Il existe désormais des utilitaires à la fois plus puissants, plus simples d'utilisation et à la portabilité plus grande -- Linux, Mac OS X, Windows et j'en passe --, à savoir CMake et SCons. Pour ma part, j'utilise SCons.
Sinon, je travaille actuellement sur un document qui doit aborder ces sujets, mais je n'ai pas trop avancé dessus ces derniers temps.
À bientôt.
Le Farfadet Spatial
Dernière modification par Le Farfadet Spatial (Le 03/05/2010, à 14:00)
Hors ligne
#4 Le 03/05/2010, à 14:49
- rniamo
Re : Bien structurer un projet c++
je rejoins à peut près Le farfadet (à part peut être sur emacs que je ne comparerais pas à vim ).
les dossiers importants sont src/, build/ (moi je l'appelle bin/), dbg/, resources/ (ou doc/ selon le type de projet et de resources). J'ajouterais qu'il est possible de séparer dans les .h des .cpp en ajoutant le dossier include/. Enfin en conclusion il faut que tu choississes ta structure je pense mais respecte (au moins pour toi) un minimum d'organisation. Celle que t'as donné le Fafardet est le plus classique et une des plus efficace.
Enfin concernant les outils de build, je le rejoins aussi, j'aime bien scons mais cmake est plus puissant et portable...a priori . Pour la majorité des projet un makefile est déjà pas mal (surtout en amateur)
< Quelques un des mes programmes | Cuisine Facile (pour les gourmands) | Fast MVC for PHP >
\ ^__^
\ (o o)\_______
(___)\ )\
Hors ligne
Pages : 1