Как компилятор C находит, что -lm указывает на файл libm.a?

Что такое .a файлы в программировании на C в Linux? Это библиотечный файл?

To merge with the math library libm.a you would type

 cc -o program_name prog.c -lm

when you compile the program. The -lm means: add in libm. If we wanted to add in the socket library libsocket.a to do some network programming as well, we would type

 cc -o program_name prog.c -lm -lsocket

and so on. 

Вот как компилятор находит, что -lm указывает на файл libm.a, а -lsocket как libsocket.a?

И если мы добавим файл заголовка в программу, мы должны упомянуть библиотеку при компиляции?

Ответы на вопрос(3)

Ваш ответ на вопрос