Что делает опция `cc`` -ldl` в следующей команде? - PullRequest
2 голосов
/ 07 сентября 2010

во время компиляции dynlinktest.c выдает следующую ошибку:

unipro @ ubuguest: ~ $ cc dynamiclinktest.c -o dynamiclinktest /tmp/ccli8dp2.o: в функции main': dynamiclinktest.c:(.text+0x53): undefined reference to dlopen 'dynamiclinktest.c :(. text + 0x83): неопределенная ссылка на dlsym' dynamiclinktest.c:(.text+0x109): undefined reference to dlclose 'collect2: ld вернул 1 состояние выхода

после использования cc dynlinktest.c -o dynlinktest -ldl, которое он запускает.я не понимаю, почему это необходимо, используя -ldl?

edit1: оставляя пробел до ошибки.

1 Ответ

5 голосов
/ 07 сентября 2010

-ldl включает ссылку на библиотеку, в которой есть символы для загрузки динамических библиотек (например, dlopen).

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