Ответ 1
.a
находятся файлы статические библиотеки. Они "содержат" один или несколько файлов .o
, то есть скомпилированный код. Чтобы использовать их, вам (часто) нужны файлы заголовков (.h
), которые соответствуют скомпилированному коду, но вам не нужен исходный код (.c
, .m
).
Файлы .a
создаются с помощью утилиты ar
, а компоновщик (ld
), который (обычно) вызывается вашим компилятором, знает их формат и как извлекать соответствующие фрагменты кода из архива и в ваш исполняемый файл.