2023-12-09 15:09:20 +01:00
|
|
|
# clang
|
|
|
|
|
2024-09-25 22:34:49 +02:00
|
|
|
> Compileer C, C++, en Objective-C bronbestanden. Kan gebruikt worden als een vervanger van GCC.
|
|
|
|
> Onderdeel van LLVM.
|
2023-12-09 15:09:20 +01:00
|
|
|
> Meer informatie: <https://clang.llvm.org/docs/ClangCommandLineReference.html>.
|
|
|
|
|
2024-09-25 22:34:49 +02:00
|
|
|
- Compileer broncodebestand(en) naar een uitvoerbaar binair bestand:
|
2023-12-09 15:09:20 +01:00
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{pad/naar/bron1.c pad/naar/bron2.c ...}} {{[-o|--output]}} {{pad/naar/uitvoerbaar_bestand}}`
|
2023-12-09 15:09:20 +01:00
|
|
|
|
2024-09-25 22:34:49 +02:00
|
|
|
- Toon (bijna) alle fouten en waarschuwingen:
|
2023-12-09 15:09:20 +01:00
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{pad/naar/bron.c}} -Wall {{[-o|--output]}} {{pad/naar/uitvoerbaar_bestand}}`
|
2024-09-25 22:34:49 +02:00
|
|
|
|
|
|
|
- Toon veelvoorkomende waarschuwingen, debug-symbolen in de uitvoer, en optimaliseer zonder debugging te beïnvloeden:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{pad/naar/bron.c}} -Wall {{[-g|--debug]}} -Og {{[-o|--output]}} {{pad/naar/uitvoerbaar_bestand}}`
|
2023-12-09 15:09:20 +01:00
|
|
|
|
|
|
|
- Voeg bibliotheken toe die zich op een ander pad bevinden dan het bronbestand:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{pad/naar/bron.c}} {{[-o|--output]}} {{pad/naar/uitvoerbaar_bestand}} -I{{pad/naar/header}} -L{{pad/naar/bibliotheek}} -l{{bibliotheek_naam}}`
|
2023-12-09 15:09:20 +01:00
|
|
|
|
|
|
|
- Compileer broncode naar LLVM Intermediate Representation (IR):
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{[-S|--assemble]}} -emit-llvm {{pad/naar/bron.c}} {{[-o|--output]}} {{pad/naar/uitvoer.ll}}`
|
2023-12-09 15:09:20 +01:00
|
|
|
|
|
|
|
- Compileer broncode zonder deze te linken:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{[-c|--compile]}} {{path/to/source.c}}`
|
2023-12-09 15:09:20 +01:00
|
|
|
|
|
|
|
- Optimaliseer het gecompileerde programma voor prestaties:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{pad/naar/bron.c}} -O{{1|2|3|fast}} {{[-o|--output]}} {{pad/naar/uitvoerbaar_bestand}}`
|
2024-09-25 22:34:49 +02:00
|
|
|
|
|
|
|
- Toon de versie:
|
|
|
|
|
|
|
|
`clang --version`
|