URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 295
[ Назад ]

Исходное сообщение
"а-ля dll в UNIX"

Отправлено Не_знаю_что_придумать , 25-Ноя-01 22:07 
можно ли в унихе делать динамически подгружаемые библиотеки, и если да, то как? Насколько я понял, разделяемые библиотеки для этого не очень подходят, так как исполнимому модулю надо уже на этапе компиляции знать имя и интерфейс библиотеки. То есть для одиночного подключения это подходит, но вот для реализации плагинов - никак, так как плигинов может быть много и их имена наперед неизвестны.

Иными словами, как в унихе реализуется механизм плагинов (без перекомпиляции)


Содержание

Сообщения в этом обсуждении
"RE: а-ля dll в UNIX"
Отправлено XMan , 25-Ноя-01 23:12 
Смотреть в сторону dlopen. В мане неплохо описано, что нужно делать.

"RE: а-ля dll в UNIX"
Отправлено Не_знаю_что_придумать , 27-Ноя-01 08:37 
>Смотреть в сторону dlopen. В мане
>неплохо описано, что нужно делать.
>


Спасибо большое!


"RE: а-ля dll в UNIX"
Отправлено Saliy , 29-Ноя-01 16:28 
Что ты имееш конкретно не знаю .
Но если говорить плагинах к Netscape
то я их компилировал под Solaris к Netscape и
Mozille в LinuxRH6.2 .
Доки по плагинам для Мозиллы и Нетскапе
на их родных серверах
http://home.netscape.com/eng/mozilla/3.0/handbook/plugins/in... .

----------------------------------
Brainbench MVP Unixadmin ID=492868
http://brainbench.com
Saliy V.S.


"RE: а-ля dll в UNIX"
Отправлено fefelov , 04-Дек-01 19:40 
Writing DLLs for Linux apps: Why write a whole app when you can just write a plugin?

http://www-106.ibm.com/developerworks/linux/library/l-dll.html


"RE: а-ля dll в UNIX"
Отправлено uldus , 05-Дек-01 12:00 
>можно ли в унихе делать динамически
>подгружаемые библиотеки,

В дополнение к сказанному, рекомендую посмотреть как динамическое подключение плагинов призводится в таких программах как xmms и licq, отталкиваясь от  примеров гораздо легче писать, все грабли отмечены.


"RE: а-ля dll в UNIX"
Отправлено fefelov , 05-Дек-01 17:20 
А я советую еще и вот здесь глянуть примерчик:
http://www.dystance.net/ping/spyrius/