
=> Builds a staticlaly linked position independent executable. => Builds a dynamically linked position independent executable. Option is better for incremental compilation when using => Compiler source(s) to object-code (input to linker). => Builds executable with debugging symbols for GDB GNUĭebugger or LLDB Clang/LLVM Debugger. -fexceptions -fstack-protector-strong –param=ssp-buffer-size=4.
Of flags as can be seen src (-ffloat-store, -ffsast-math,
Enables higher level of optmization than (-O3).
No optmization, faster compilation time, better for debugging builds. -DDO_SOMETHING=1 - Equivalent to add to the code #define DO_SOMETHING = 1. -DCOMPILE_VAR -> Enable flag COMPILE_VAR - It is equivalent to. -I/path/to/include1 -I/path/to/include2 …. Include Path - Directories containing headers files. -lpthread - Compile against Posix threads shared library. -lm - Compiles against the shared library libm (basic math. -Wpointer-arith -Wcast-qual -Wmissing-prototypes -Wno-missing-braces. Issues warning whenever there are compiler extensions non Issue all warning required by ISO C and ISO C++ standard, it. Wsign-compare (C only), -Wtype-limits, -Wuninitialized … Enables extra flags not enabled by -Wall, such as. Turn any warning into a compilation error. Wuninitialized, -Wunknown-pragmas, -Wunused-value, (-Waddress, -Wcomment, -Wformat, -Wbool-compare, Turns on lots of compiler warning flags, specifically. -std=gnu++ (ISO C++ with GNU extensions). std - Specify the C++ version or ISO standard version. GCC and Clang Most common compiler flags: Add search path to header files (.h) or (.hpp). *.so, *.dll or *.dlyb files such as libLinearAlgebra.so depending => Add search path to shared libraries, directory containing. Linux, BSD, AIX, …) or linalg.dylib on MacOSX. Links to linalg.dll on Windows, liblinalg.so (on Unix-like oses like => Links to shared library or shared object - Specifically, it.