Heim > Backend-Entwicklung > C++ > Wie erstelle ich ein einfaches C-Makefile zum Kompilieren und Verknüpfen?

Wie erstelle ich ein einfaches C-Makefile zum Kompilieren und Verknüpfen?

Mary-Kate Olsen
Freigeben: 2024-12-24 14:05:10
Original
832 Leute haben es durchsucht

How to Create a Simple C   Makefile for Compilation and Linking?

So erstellen Sie ein EINFACHES C-Makefile

Einführung

Das Erstellen eines Makefiles ist zum Kompilieren und Ausführen eines C-Projekts erforderlich. Dieser Artikel bietet eine Einführung in Make und eine Schritt-für-Schritt-Anleitung zum Erstellen eines einfachen Makefiles.

Grundlegendes zu Make

Make ist ein Build-Abhängigkeitsmanager, der die Reihenfolge orchestriert, in der Befehle ausgeführt werden müssen ausgeführt werden, um Ihre C-Quelldateien zu kompilieren und in eine ausführbare Datei zu verknüpfen.

Einrichten des Makefiles

Für dieses Beispiel gehen wir von Ihnen aus haben eine einzelne C-Datei mit dem Namen a3driver.cpp und eine importierte Klasse in /user/cse232/Examples/example32.sequence.cpp.

Bausteine ​​eines Makefiles

Variablen: Mit Make-Variablen können Sie Informationen wie Compiler-Flags und Bibliotheken speichern. Beispiel:

CPPFLAGS=-g -pthread -I/sw/include/root
Nach dem Login kopieren

Ziel- und Abhängigkeitslinien: Ziellinien geben die zu generierende Ausgabe an, während Abhängigkeitslinien die zum Erstellen des Ziels erforderlichen Dateien auflisten. Beispiel:

tool: tool.o support.o
    g++ $(LDFLAGS) -o tool tool.o support.o $(LDLIBS)

tool.o: tool.cc support.hh
    g++ $(CPPFLAGS) -c tool.cc
Nach dem Login kopieren

Beispiel-Makefile

Unten finden Sie ein einfaches Makefile für Ihre spezifischen Anforderungen:

CPPFLAGS=-g
LDFLAGS=-g
LDLIBS=-L/usr/lib/-llua5.2
SRCS=a3driver.cpp /user/cse232/Examples/example32.sequence.cpp
OBJS=$(SRCS:.cpp=.o)

all: a3driver

a3driver: $(OBJS)
    $(CXX) $(LDFLAGS) -o a3driver $(OBJS) $(LDLIBS)

.PHONY: clean
clean:
    rm -f $(OBJS) a3driver
Nach dem Login kopieren

Erklärung

  • CPPFLAGS und LDFLAGS setzt die notwendigen Kompilierungs- und Verknüpfungsflags.
  • SRCS definiert die Quelle Dateien und OBJS generiert die entsprechenden Objektdateien.
  • all ist das Standardziel und a3driver ist die ausführbare Datei.
  • Das saubere Ziel entfernt Objektdateien und die ausführbare Datei.

Fazit

Dieses Beispiel-Makefile sollte es Ihnen ermöglichen, Ihr C-Projekt mit der angegebenen externen Klasse zu kompilieren und auszuführen. Denken Sie daran, dass Makefiles anpassbar sind. Sie können sie also jederzeit entsprechend Ihren Anforderungen erweitern und ändern.

Das obige ist der detaillierte Inhalt vonWie erstelle ich ein einfaches C-Makefile zum Kompilieren und Verknüpfen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage