web-dev-qa-db-fra.com

Utilisation d'un Makefile personnalisé avec Eclipse / CDT

J'ai un projet de plusieurs .c et .h fichiers et j'écris mon propre makefile.

Comment puis-je configurer Eclipse pour utiliser mon makefile et mes fichiers source à partir de leurs emplacements d'origine?

42
Stoiko

Vous pouvez créer un Makefile personnalisé et vous assurer qu'il se trouve dans la racine de votre projet. Ensuite, vous devez désactiver les makefiles générés automatiquement. Vous pouvez le faire en allant ici:

Project Properties (right click on project and select properties) -> C/C++ Build -> in that window uncheck "Generate Makefiles Automatically."

Pour utiliser vos propres cibles, vous pouvez ouvrir la vue intitulée "Make Target":

Window -> Show View -> Make Target

Dans cette vue, vous pouvez créer une nouvelle cible qui utilisera la cible correspondante dans votre Makefile personnalisé.

42
nates

Il existe une option pour créer un projet à partir de makefiles existants: utilisez l '"Assistant Projet" et sélectionnez "Projet Makefile".

19
jldupont

Vous pouvez désactiver "Générer automatiquement des makefiles" dans les propriétés du projet Eclipse -> build c/c ++ (paramètres du générateur).

7
markovuksanovic

Lors de ma dernière tentative de compilation d'une croix ARM compilation, j'ai fait une douloureuse découverte sur la façon de faire fonctionner cela.

J'ai d'abord créé un "projet Makefile avec du code existant". J'ai sélectionné la chaîne d'outils Cross ARM. Si j'ouvre maintenant une console dans Eclipse et que je la fais, cela fonctionne.

Maintenant, pour construire dans l'interface graphique, je devais:

  1. Modifiez les propriétés en Générateur interne, avec l'option Générer le Makefile cochée.
  2. L'option des paramètres propose désormais l'onglet Créer un artefact. choisissez l'exécutable avec $ {Project}.
  3. Construire. Cela entraînera une erreur dans l'étape de liaison.
  4. Basculez les paramètres vers External Builder, décochez "Génération automatique de Makefile"
  5. Nettoyer
  6. Construire
3
Narada Fernando

Tout ce que vous avez à faire est de dire à gmake d'utiliser votre makefile. La commande par défaut pour Code Composer Studio est ${CCS_UTILS_DIR}/bin/gmake. Dites simplement à gmake d'utiliser votre propre makefile (par exemple sri.mk). Nous le faisons avec l'option -f. Ainsi, la commande par défaut deviendrait ${CCS_UTILS_DIR}/bin/gmake -f ../sri.mk

Notez que Code Composer Studio est basé sur Eclipse.

Voici les instructions:

  1. projet-> propriétés-> C/C++ Build
  2. cliquez sur l'onglet 'Builder'
  3. Désélectionnez "Utiliser la commande de construction par défaut"
  4. Modifiez la commande en ${CCS_UTILS_DIR}/bin/gmake -f ../sri.mk

screen capture of gui settings

Notez que la construction est lancée depuis le répertoire Debug. Le répertoire Debug contient les makefiles générés par Eclipse. J'ai mis mon makefile dans le répertoire de niveau supérieur du projet, c'est pourquoi j'ai mis ../ dans -f ../sri.mk.

2
shrewmouse

En outre, il peut y avoir une ligne qui indique "default: esh $(PLUGIN_SO)," ou quelque chose dans ce sens en fonction de votre projet. J'ai trouvé que changer le "default" à "all" permettra également au projet de se compiler. Ceci est une fonctionnalité pratique, Eclipse :)

1
John McElmurray