Почему мы используем библиотеки?

Библиотеки в программировании содержат данные конфигурации, документацию, справочные данные, шаблоны сообщений, предварительно написанный код и подпрограммы, классы, значения или спецификации типов. Мы используем это, чтобы разделить все эти вещи по отдельности, вместо того, чтобы хранить их все в одном месте.

Как они работают?

Когда вы компилируете и запускаете библиотеку, параметр -c заставляет компилятор создавать объектный файл для библиотеки. Объектный файл содержит машинный код библиотеки. Который при добавлении на github превращается в бинарный файл, который легче читать компьютеру.

Как создавать библиотеки? (ТОЛЬКО ЛИНУКС)

  1. gcc -fPIC -c *.c

Эта команда позволяет вам создать динамическую библиотеку. -fPIC делает его общей библиотекой, -c превращает все файлы .c в объектные файлы (.o), а *.c выбирает все файлы .c в вашем текущем каталоге.

2. gcc -shared -o liball.so *.o

Теперь, когда у вас есть все файлы .o, все готово к компиляции. Эта команда компилирует его с использованием флага -shared. Вы должны добавить имя библиотеки, чтобы компьютер знал, что он компилирует (.so для динамического и .a для статического).

Создание статической библиотеки почти такое же, только немного другое, давайте поговорим об этом.

  1. Сначала создайте файлы с расширением .c, а затем измените их на объектные файлы (.o) с помощью команды ar -rcs libexample.a *.o
  2. это превратит все ваши файлы .c в объектные файлы
  3. вам нужно будет скомпилировать такие файлы gcc -o main main.o -L. -llib
  4. это говорит компьютеру искать «llib»

Как только вы это сделаете, вы создали статическую библиотеку!