diff --git a/camera-node-control/Makefile b/camera-node-control/Makefile
new file mode 100644
index 0000000000000000000000000000000000000000..a137ad1c6579ac1c3eb7de6bddae0290b6661b60
--- /dev/null
+++ b/camera-node-control/Makefile
@@ -0,0 +1,24 @@
+CXX = g++
+CXXFLAGS = -Wall -std=c++17 `pkg-config --cflags libcamera opencv4`
+LDFLAGS = `pkg-config --libs libcamera opencv4`
+
+SOURCES = camera.cpp gpio.cpp
+OBJECTS = $(SOURCES:.cpp=.o)
+TARGET = camera
+DIRS = ../images ../plates
+
+.PHONY: all clean directories
+
+all: directories $(TARGET)
+
+directories:
+	@mkdir -p $(DIRS)
+
+$(TARGET): $(OBJECTS)
+	$(CXX) $(OBJECTS) -o $(TARGET) $(LDFLAGS)
+
+%.o: %.cpp
+	$(CXX) $(CXXFLAGS) -c $< -o $@
+
+clean:
+	rm -f $(OBJECTS) $(TARGET)
\ No newline at end of file