logo
Подбельский Фомин_Программирование на языке СИ_

Стандартные библиотеки.

Стандартные библиотеки. Стандартные библиотеки UNIX хранятся в каталогах /lib или /usr/lib. Ссылка на библиотеки осуществляется при помощи ключа компоновщика -l, который задается в команде ее вызова компилятора языка Си после всех ключей и параметров компилятора. Непосредственно за ключом (без пробела) указывается идентификатор библиотеки, например

где х - часть имени библиотеки (полное имя библиотеки в данном случае libx.a; стандартный префикс для библиотеки "lib"; стандартное расширение имени для библиотеки 'а'). Обратите внимание, что libx.a есть название библиотеки, а не отдельного модуля, поэтому суффикс '.а' не обозначает "модуль на ассемблере", как, например, на рис. 9.2.

Стандартная библиотека языка Си просматривается компоновщиком автоматически, т.е. указание этой библиотеки в командной строке вызова компилятора Си не требуется. Эта библиотека хранится в файле /lib/libc.a.

Библиотека математических функций хранится в файле /lib/libm.a, поэтому указание библиотеки в команде вызова компилятора будет таким: -lm. Напомним, что ключ -1, являющийся ключом компоновщика, необходимо разместить в командной строке вызова компилятора Си после всех других ключей и параметров, так как просмотр библиотеки должен происходить после компиляции, когда становится известно, какие функции из библиотеки нужны для построения исполняемого модуля.