commands.sh

clang

all

Compile C, C++, and Objective-C source files. Can be used as a drop-in replacement for GCC. Part of LLVM.

More info →

Options (4)

-o, --outputboolean

Compile multiple source files into an executable

Example: clang {{path/to/source1.c path/to/source2.c ...}} {{[-o|--output]}} {{path/to/output_executable}}
-g, --debugboolean

Show common warnings, debug symbols in output, and optimize without affecting debugging

Example: clang {{path/to/source.c}} -Wall {{[-g|--debug]}} -Og {{[-o|--output]}} {{path/to/output_executable}}
-S, --assembleboolean

Compile source code into LLVM Intermediate Representation (IR)

Example: clang {{[-S|--assemble]}} -emit-llvm {{path/to/source.c}} {{[-o|--output]}} {{path/to/output.ll}}
-c, --compileboolean

Compile source code into an object file without linking

Example: clang {{[-c|--compile]}} {{path/to/source.c}}

Examples (8)

Compile multiple source files into an executable

clang path/to/source1.c path/to/source2.c ... [-o|--output] path/to/output_executable

Activate output of all errors and warnings

clang path/to/source.c -Wall [-o|--output] output_executable

Show common warnings, debug symbols in output, and optimize without affecting debugging

clang path/to/source.c -Wall [-g|--debug] -Og [-o|--output] path/to/output_executable

Include libraries from a different path

clang path/to/source.c [-o|--output] path/to/output_executable -Ipath/to/header -Lpath/to/library -llibrary_name

Compile source code into LLVM Intermediate Representation (IR)

clang [-S|--assemble] -emit-llvm path/to/source.c [-o|--output] path/to/output.ll

Compile source code into an object file without linking

clang [-c|--compile] path/to/source.c

Optimize the compiled program for performance

clang path/to/source.c -O1|2|3|fast [-o|--output] path/to/output_executable

Display version

clang --version
made by @shridhargupta | data from tldr-pages