Updated Makefiles
This commit is contained in:
35
Task_3/Task_3.1/Makefile
Normal file
35
Task_3/Task_3.1/Makefile
Normal file
@@ -0,0 +1,35 @@
|
||||
# Syntax
|
||||
# <target>: <dependencies>
|
||||
# <command>
|
||||
# ...
|
||||
|
||||
# variables
|
||||
CXX = g++
|
||||
CXXFLAGS = -Wall -std=c++11
|
||||
|
||||
# standard rule
|
||||
all: main
|
||||
|
||||
# creating main from main.o and hello_world.a
|
||||
# $@ = target
|
||||
# $^ = dependencies
|
||||
main: main.o hello_world.a
|
||||
$(CXX) $(CXXFLAGS) -o $@ $^
|
||||
|
||||
# creating archive out of object
|
||||
# % = filename without ending
|
||||
# $@ = target
|
||||
# $^ = dependencies
|
||||
%.a: %.o
|
||||
ar rcs $@ $^
|
||||
|
||||
# creating object out of cpp
|
||||
# % = filename without ending
|
||||
# $@ = target
|
||||
# $^ = dependencies
|
||||
%.o: %.cpp
|
||||
$(CXX) $(CXXFLAGS) -c -o $@ $^
|
||||
|
||||
# remove all objects and archives
|
||||
clean:
|
||||
rm -f *.o *.a main
|
||||
9
Task_3/Task_3.1/hello_world.cpp
Normal file
9
Task_3/Task_3.1/hello_world.cpp
Normal file
@@ -0,0 +1,9 @@
|
||||
#include <iostream>
|
||||
#include "hello_world.h"
|
||||
|
||||
void hello() {
|
||||
std::cout << "Hello World" << std::endl;
|
||||
}
|
||||
|
||||
// g++ -c hello_world.cpp -o hello_world.o
|
||||
// ar rcs hello_world.a hello_world.o
|
||||
6
Task_3/Task_3.1/hello_world.h
Normal file
6
Task_3/Task_3.1/hello_world.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef HELLO_WORLD_H
|
||||
#define HELLO_WORLD_H
|
||||
|
||||
void hello(); // Deklaration der Funktion
|
||||
|
||||
#endif
|
||||
7
Task_3/Task_3.1/main.cpp
Normal file
7
Task_3/Task_3.1/main.cpp
Normal file
@@ -0,0 +1,7 @@
|
||||
#include <iostream>
|
||||
#include "hello_world.h"
|
||||
|
||||
int main(){
|
||||
hello();
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user