Make File Concepts

so --- shared object compiled only files -c

#include "weather.h" /// as it is not from /usr/include

gcc weather.so mainprog.c -o executbale.o -g

using several library
link external objects files
libraris in system
/usr/include ------ all header/declaration for libraries
/usr/lib ------ binaries/definations for library
2 ways to write it in gcc prompt:
gcc -lmath prog.c -o uiii -g3
gcc /usr/lib/libmath.so prog.c -o uiiii -g3
.a --- archive modifying the library created by us, we need to compile library.
we can automate process of compilation ----- use makefiles
gcc -std=c11 -Wall -Wextra -c libimage.c -o libimage.so
gcc -std=c11 -Wall -Wextra limage superimage.c -o superimage


automate build process ---- makefile
importance of tab in makefile:

#Strcture of make file:
target(what you wish to produce): what is needed to do so
How to produce that
**************running program with makefile
launch: program
./program
keywords in makefile:
all