Aktywne Wpisy

JW26 +17
#oscary 150 nowych technologii wymyślonych na potrzeby stworzenia 2 i 3 filmu, ale Cameron nie jest już wizjonerem i c--j XD. Oni wzięli jakichś dwóch randomów z forum filmwebu do tego studio?

Treść przeznaczona dla osób powyżej 18 roku życia...





kiedyś widziałem Makefile, który sprawdzał które pliki zedytowałem, robił ich pliki z rozszerzeniem .o, i linkował w jeden plik do odpalenia. Pozwalało to nie kompilować na nowo plików których nie zmieniałem, co oszczędzało kupę czasu. Jak taki plik napisać?
Mój aktualny makefile:
CC=g++
LINKERFLAGS=-lSDL2 -lSDL2gfx -lSDL2image
COMPILERFLAGS=-Wall -pedantic -Wextra -g -std=c++20
INPUT=src/main.cpp src/Engine/Engine.cpp src/Object/Object.cpp src/functions.cpp
OUTPUT=Output/Game
target:
$(CC) $(INPUT) $(LINKERFLAGS) $(COMPILERFLAGS) -o $(OUTPUT)
target: file.cppChyba zadziała jak wpiszesz po prostu tą zmienną $(INPUT) tam
%.o: %.cpp
$(CXX) $(CXXFLAGS) $< -c
2. Warto skorzystać z opcji MMD, bo plik cpp mógł zostać bez zmian, ale mogły się pozmieniać pliki nagłówkowe .h
3. W linijce "target:" dodajesz zależność od składowych obiektów .o
osobiście polecam zaprzyjaźnić się z CMake, wtedy będzie rekompilowywał także pliki cpp także jeżeli zmienisz coś w zależnych hpp(goły makefile tego nie ogarnia)
Ale @MamCieNaHita dobrze mówi, cmake skomplikowany, ale lepszy, możesz pokombinować z ninja jeszcze
https://dmerej.info/blog/post/chuck-norris-part-1-cmake-ninja/
@inspektor_gadzet: