make automatiseert het bouwproces van software — voert commando's uit op basis van een Makefile.
make # Standaard doel uitvoeren
make install # Doel 'install' uitvoeren
make clean # Bouwbestanden opruimen
make -j4 # Parallel met 4 threads
doel: afhankelijkheden
commando
app: main.o utils.o
gcc -o app main.o utils.o
main.o: main.c
gcc -c main.c
clean:
rm -f *.o app
Let op: het inspringen moet met een tab, niet spaties.
| Optie | Betekenis |
|---|---|
-j n | Parallel uitvoeren met n threads |
-C map | Voer make uit in andere map |
-f bestand | Ander Makefile-bestand gebruiken |
-n | Droogloop — toon wat er zou gebeuren |
-B | Alles opnieuw bouwen |
./configure
make -j$(nproc)
sudo make install
make wordt ook gebruikt buiten C/C++ als algemene taakautomatisering:
test:
pytest tests/
lint:
ruff check .
deploy:
rsync -av dist/ server:/var/www/
make -j$(nproc) benut alle CPU-kernen voor compilatie — maakt grote projecten aanzienlijk sneller.