как работает линкер? - PullRequest
0 голосов
/ 03 июня 2011

В статическом линковании, как компоновщик знает, с каким библиотечным файлом связать скомпилированный объектный код пользователя?Я имею в виду, что заголовок содержит только прототипы функций, которые могут использоваться в исходном коде, а не имя файла библиотеки ... не так ли?

Ответы [ 2 ]

2 голосов
/ 03 июня 2011

Вот почему вы предоставляете компоновщику список библиотек для ссылок!

Например, для GCC вы можете сделать что-то вроде:

gcc my_prog.o -lm -lpthread -o my_prog

Здесь флаг -lиспользуется для указания компоновщику ссылки на libm и libpthread.

1 голос
/ 03 июня 2011

Получает список библиотек из командной строки. Специфика будет зависеть от ОС и компилятора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...