Die Compilation wird mit M-x compile oder mit f17 gestartet. Um erfolgreich compilieren zu können, muss ein Makefile vorhanden sein. Ein solches Makefile kann etwa für C folgendermassen aussehen (für GNU C Compiler):
NAME=hello # durch Programm-Namen ersetzen
CC=cc # Standard UNIX: cc, GNU: gcc, Borland: tcc
SRC=$(NAME).c
EXE=$(NAME) # Windows benutzt .EXE als Endung
FLAGS = -g
# -g == add sybolic debuginformation
# -o == gernerate the output file, in this case the exe-file
all: $(NAME)
$(NAME):$(SRC)
$(CC) $(FLAGS) -o $(EXE) $(SRC)
clean:
rm -f $(NAME).l core *~
Die Meldungen des Compilers werden in den Buffer *compilation*
geschrieben (siehe auch Bild 7). Mit der Taste
f14 kann man zum nächsten Fehler springen. Für ein C++ Programm
könnte das Makefile etwa so aussehen.
NAME=hello # durch Programm-Namen ersetzen
CC=g++ # Standard UNIX: CC, GNU: g++, Borland: tcc
SRC=$(NAME).cc # Windows Compiler benutzen meist .cpp
BIN=$(NAME) # Windows benutzt .EXE als Endung
CFLAGS = -g
# -g == mit Debugger Infos
# -Wall == alle Warnungen eingeschaltet
all: $(NAME)
$(NAME):$(SRC)
$(CC) $(CFLAGS) -o $(BIN) $(SRC)
clean:
rm -f $(NAME).l core *~
Ich empfehle für jedes Programm ein eigenes Unterverzeichnis zu erstellen. Wenn man den GNU C-Compiler verwenden möchte, ersetzt man cc durch gcc. hello muss man natürlich durch den Filenamen des zu übersetzenden Programmes ersetzen.