IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Eclipse C & C++ Discussion :

[Eclipse CDT] Build directory spécifique au make


Sujet :

Eclipse C & C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2003
    Messages
    28
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Février 2003
    Messages : 28
    Points : 29
    Points
    29
    Par défaut [Eclipse CDT] Build directory spécifique au make
    Bonjour,

    J'essaie de configurer Eclipse CDT pour un projet particulier.

    J'ai bien avancé dans la configuration (include, makefile...). Cependant, il me reste un point à éclaircir.

    Je m’explique, le projet est construit en plusieurs répertoires, chaque répertoire représente un objet, dans chacun des répertoires on retrouve un sous-répertoire include, make et source.

    Représentation :
    Projet
    | ClasseA
    |include
    ClasseA.hpp
    |make
    makefile
    |source
    ClasseA.cpp
    | TrucB
    | ClasseC
    |include
    ClasseC.hpp
    |make
    makefile
    |source
    ClasseC.cpp
    | ClasseD
    |include
    ClasseD.hpp
    |make
    makefile
    |source
    ClasseD.cpp
    EDIT : La classeD et C sont dans le répertoire TrucB

    J'espère que c'est clair. Mon problème vient du fait que pour chaque makefile j'ai bien défini les targets (dans le vue MakeTarget) et que celle-ci fonctionne. Mais à chaque fois que je change de cible (notamment de répertoire), je dois également changer dans les propriétés du projet, le Build Directory (dans Properties > C++ Make Project > Make Builder).

    Je souhaite en fait que lorsque je compile une target que je sélectionne dans la vue Marke Target), le build directory soit celui du makefile correspondant (de manière automatique).

    J'ai regardé dans le xml du projet (.cdtprojet), et il y a bien une chose du genre pour chaque target spécifiée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <target name="all" path="src/commun/src/cominterne/mkgen" targetID="org.eclipse.cdt.make.RemoteMakeTargetBuilder">
            <buildCommand>make</buildCommand>
            <buildArguments></buildArguments>
            <buildTarget>all</buildTarget>
            <stopOnError>true</stopOnError>
            <useDefaultCommand>true</useDefaultCommand>
        </target>
    J'aimerais donc modifier le "targetID="org.eclipse.cdt.make.RemoteMakeTargetBuilder"" par le chemin du makefile correspondant.

    Si quelqu'un a une idée, je suis preneur.

    Merci

  2. #2
    Membre régulier Avatar de corwin
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2002
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2002
    Messages : 85
    Points : 77
    Points
    77
    Par défaut
    Bonjour,

    Idem que Harbaingan je suis intéressé par cela.

    Au passage c'est quoi les Project Reference ?

    Je me suis dit que l'on pourrait utiliser cela :
    Chaque sous répertoire avec son makefile constitue un projet.
    Et les parties "plus haute du code" constituent un autre projet qui associe les sous-couches via les Projet Reference.
    Suivant ton exemple :
    Le Projet ClassA a pour référence TrucB
    Et le projet TrucB est constitué des ClassC ClassD
    Enfin c'est une piste.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2009
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    Bonjour,

    Il se trouve que j'ai exactement le même souci 6 ans après ce poste.

    Quelqu’un connait-il une solution pour associer un Build Directory, à chaque make Target ?

    J'utilise pour le moment un appel à un fichier externe (dans le build command) qui se charge de se placer dans le bon fichier ( CD %VS_PROJECT_PATH%\%VS_PROJECT_TARGET_NAME%), grâce au nom du make target associé, avant d'appeler le build.

    Mais cela n'ai pas très joli et impose de copier ce fichier dans l'ensemble de mes targets...

    J'avais pensé à mettre dans Build Directory (Properties > C++ Make Project > Make Builder) une adresse relative au nom du dossier (dans l’arborescence Eclipse) où se situe mon make target.
    Mais je n'ai trouvé aucune variable capable de me récupérer le nom du fichier courant, j'ai uniquement réussi à récupérer le nom du projet via la variable ${ProjName}.

    Merci d'avance à celui qui trouvera une solution.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2012
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    Bonjour,

    Je crois qu'il suffit de mettre la make target au même endroit de l'arborescence de la fenêtre maketarget où se trouve le makefile que tu veux exécuter dans l'arborescence de ton projet.

    Arborescence projet :

    Projet
    Rep1
    file1
    makefile1
    Rep2
    file2
    makefile2
    makefile
    Arborescence maketarget:

    Projet
    Rep1
    maketarget1 -> lancera makefile1
    Rep2
    maketarget2 -> lancera makefile2
    maketarget -> lancera makefile

Discussions similaires

  1. utilisation de la classe org.eclipse.cdt.build.MakeTargetBuilder
    Par tensei dans le forum Eclipse Platform
    Réponses: 0
    Dernier message: 09/12/2008, 17h01
  2. [eclipse CDT+Qt] no rule to make target all
    Par olivier57b dans le forum Eclipse C & C++
    Réponses: 1
    Dernier message: 13/06/2008, 14h34
  3. [Eclipse CDT] Le premier Build est toujours un Clean + Build
    Par dabeuliou dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 19/02/2007, 14h21
  4. [eclipse cdt]build error
    Par ederf dans le forum Eclipse C & C++
    Réponses: 1
    Dernier message: 07/11/2006, 02h27
  5. [Install] Eclipse + CDT
    Par SpeCiE dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 25/03/2005, 16h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo