LINUX.ORG.RU

Linux dll


0

1

Заранее sorry за тупые вопросы, но

Какое расширение в Linux имеют файлы - аналог Win dll?
Как скомпилить и как с ними работать?

anonymous

Расширение у этих файлов .so (Shared Object). Кстати есть еще и аналоги .lib - у них расширения .а Для того, чтобы скомпилить shared object компоновщиуц нужно установить опцию -shared в makefile или откуда ты там собираешься его компилить. А для того, чтобы с ними работать - особых усилий прикладывать не нужно. Просто, опять же, указываешь линковщику опцию -lname (эль маленькая) и просто вызываешь функцию из библиотеки без прочих изощрений... Когда линкуешь динамическу библиотеку, можешь давать ей любое имя, но потом, ОБЯЗАТЕЛЬНО ее нужно переименовать в имя с префиксом lib и окончанием .so А вообще, смотри предыдущие темы этого форума - у нас там были уже жаркие дебаты по этомц поводу... :)

Akan
()

Предыдущий ответ не полный. С такой методой ты обязательно на грабли наступишь. Во первых, компилятор должен вывалить тебе PIC-код (опция -fPIC). Во вторых, не стоит это все делать руками, а надо просто прочитать info libtool.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.