0% ont trouvé ce document utile (0 vote)
2 vues2 pages

Make File

Un Makefile est un fichier contenant des instructions pour compiler et lier un projet en C++. Il définit des variables pour le compilateur, les répertoires de source, d'objets et d'exécutables, ainsi que des règles pour construire l'exécutable et nettoyer les fichiers. Pour utiliser ce Makefile, placez-le dans le répertoire racine de votre projet, créez les sous-répertoires nécessaires, et exécutez la commande 'make' dans le terminal.

Transféré par

josephkaisen66
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
2 vues2 pages

Make File

Un Makefile est un fichier contenant des instructions pour compiler et lier un projet en C++. Il définit des variables pour le compilateur, les répertoires de source, d'objets et d'exécutables, ainsi que des règles pour construire l'exécutable et nettoyer les fichiers. Pour utiliser ce Makefile, placez-le dans le répertoire racine de votre projet, créez les sous-répertoires nécessaires, et exécutez la commande 'make' dans le terminal.

Transféré par

josephkaisen66
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

COURS SUR LE MAKEFILE

Un Makefile est un fichier qui contient un ensemble d'instructions pour compiler et lier un projet.
Voici un exemple de Makefile pour votre projet :
makefile

CXX = g++
CXXFLAGS = -std=c++11 -Wall -Wextra

SRCDIR = src
OBJDIR = obj
BINDIR = bin

SRCS = $(wildcard $(SRCDIR)/*.cpp)


OBJS = $(patsubst $(SRCDIR)/%.cpp, $(OBJDIR)/%.o, $(SRCS))
EXEC = $(BINDIR)/main

all: $(EXEC)

$(EXEC): $(OBJS)
$(CXX) $(CXXFLAGS) $^ -o $@

$(OBJDIR)/%.o: $(SRCDIR)/%.cpp
@mkdir -p $(@D)
$(CXX) $(CXXFLAGS) -c $< -o $@

clean:
rm -rf $(OBJDIR) $(BINDIR)

.PHONY: all clean

Dans ce Makefile :
• CXX est le compilateur C++ utilisé (ici, g++).
• CXXFLAGS sont les drapeaux du compilateur (options de compilation).
• SRCDIR est le répertoire contenant les fichiers source.
• OBJDIR est le répertoire où seront placés les fichiers objets.
• BINDIR est le répertoire où sera placé l'exécutable.
• SRCS est la liste des fichiers source.
• OBJS est la liste des fichiers objets.
• EXEC est le nom de l'exécutable final.

Les règles de construction sont les suivantes :


• all: La cible par défaut, qui construit l'exécutable.
• $(EXEC): La règle pour construire l'exécutable à partir des fichiers objets.
• $(OBJDIR)/%.o: La règle pour construire un fichier objet à partir d'un fichier source.
• clean: La cible pour nettoyer les fichiers objets et l'exécutable.
Pour utiliser ce Makefile, placez-le dans le répertoire racine de votre projet et créez les sous-
répertoires src, obj et bin. Ensuite, mettez vos fichiers source dans le répertoire src, puis
exécutez simplement make dans votre terminal pour compiler votre projet. L'exécutable sera généré
dans le répertoire bin.

Assurez-vous d'avoir g++ et make installés sur votre système Ubuntu. Si ce n'est pas le cas, vous
pouvez les installer en exécutant la commande suivante :
DANS LE TERMINAL ON TAPE :

sudo apt install g++ make

Pour exécuter le Makefile que nous avons créé, suivez ces étapes :
1. Assurez-vous d'avoir placé le Makefile dans le répertoire racine de votre projet, où se
trouvent également vos fichiers source ([Link], [Link], member.h, etc.).

2. Ouvrez un terminal.
3. Accédez au répertoire de votre projet en utilisant la commande
Une fois dans le répertoire de votre projet, exécutez la commande make :
DANS LE TERMINAL ON TAPE :

make

Cela lancera le processus de compilation en utilisant les règles définies dans le Makefile.
5. Si la compilation se déroule sans erreur, vous obtiendrez un exécutable nommé main (ou le
nom que vous avez spécifié dans votre Makefile, si vous l'avez modifié). Vous pouvez
maintenant l'exécuter en tapant :
DANS LE TERMINAL ON TAPE :

./bin/main

Vous aimerez peut-être aussi