MUP1+-+Øvelse+01

gedit hello.cpp (laver filen og åbner)
 * 1:**

g++ hello.cpp -o hello (compiler filen + kalder den eksekverbare fil hello=

./hello (kører programmet)

**2:** Ved brug af variabler kan vi nøjes med at rette ét sted i makefilen.

Variabler skrives på følgende måde:

ex. SOURCES = hello.cpp (filer listes med spaces imellem)

OBJECTS = ${SOURCES:.cpp=.o} (laver alle objekter, ved at tage alle .cpp filer og lave om til .o filer)

**Husk når man skriver selve filen:** Det der står øverst er det target man vil lave og hvad der skal være til stede for at gøre det. Det der står under, tabuleret ind, er hvad der skal gøres for at lave target. Ex. build: ${OBJECTS} (target (build) og det der skal være tilstede (${OBJECTS})  @${CC} -o ${EXECUTABLE} ${OBJECTS} ( det der skal udføres svarer til: g++ -o hello.cpp hello.o  skrevet med variabler)

clean: rm ${EXECUTABLE} ${OBJECTS}

help: echo build clean help

For at der ikke står hvad makefile udfører, skriv @ foran alle commands

**Dump fra kode (eget brug) variabler i makefile:** SOURCES = hello.cpp OBJECTS = ${SOURCES:.cpp=.o} EXECUTABLE = hello CC = g++ TARGET = build clean help

**3:** Opgave tre var blot en større version af opgave 2. Vigtigt her fra er, at huske følgende: hvis du glemmer dette kigger den ikke på om du har ændret i dine .h filer!!!!
 * HUSK .h filer når skal lave dine .o filer - når du bruger makefile
 * ex: part1.o : part1.cpp part1.h

source = part1.cpp part2.cpp main.cppobj = ${source:.cpp=.o} exe = main cc = g++ target = build clean help
 * Dump fra kode (eget brug):**

build: ${obj} @${cc} -o ${exe} ${obj}

main.o : main.cpp part1.h part2.h @${cc} -c main.cpp

part1.o : part1.cpp part1.h @${cc} -c part1.cpp

part2.o : part2.cpp part2.h @${cc} -c part2.cpp

clean: @rm ${exe} ${obj}

help: @echo ${target}

**4:** Eclipse er faktisk bare et andet Visual Studio.

"Hammeren" for at builde "Grøn pil" for at køre