LINUX.ORG.RU

.so


0

0

т.к. под линукс я только начинаю разбираться в программировании ... то тут уж не обессудьте

как в линукс можно реализовать аналог Dllmain виндоус?

т.е. мне надо чтобы некий код выполнялся при подгрузке so и некий при отгрузке :)

и еще - как можно экспортировать только те функции, которые я хочу экспортировать?


Re: .so

вообщем с точкой входа я уже сам разобрался а вот как экспортить только то что я хочу?

theli ()
Ответ на: Re: .so от theli

Re: .so

Видимо, dlsym-это то, что тебе нужно.

BreadFan ★★ ()
Ответ на: Re: .so от theli

Re: .so

> вообщем с точкой входа я уже сам разобрался а вот как экспортить только то что я хочу?

Попробуй поискать слово version script в документации ld. Все нужные тебе символы делаешь local, остальные global.

Общая идея вот здесь вот http://docs.sun.com/app/docs/doc/817-1984/6mhm7pl18?a=view#chapter2-14824 искать Reducing Symbol Scope. Пусть тебя не смущает, что документация сановская: лучшая рыба - это, как известно, колбаса.

anonymous ()

.so

что-то я запутался ...

а как мне точно посмотреть какие функции экспортируются из so файла?

theli ()
Ответ на: .so от theli

Re: .so

man nm

ananas ★★★★★ ()
Ответ на: .so от theli

Re: .so

>а как мне точно посмотреть какие функции экспортируются из so файла?

man nm

anonymous ()
Ответ на: Re: .so от Keiko

Re: .so

а разве глобальные переменные объявленные с модификатором ststic экспортируются? вроде нет: вот и способ ограничить экспорт

anonymous ()
Ответ на: Re: .so от anonymous

Re: .so

> т.е. мне надо чтобы некий код выполнялся при подгрузке so и
> некий при отгрузке :)

вопрос - "код находящийся в самом .so" ?

Valeriy_Onuchin ★★ ()
Ответ на: Re: .so от Keiko

Re: .so

int on_load();
static int qq = on_load();

все static переменные инициализируется во время загрузки
so library. Это платформо-независимое решение :-)

С выгрузкой сложнее ... :-(

Valeriy_Onuchin ★★ ()
Ответ на: Re: .so от Valeriy_Onuchin

Re: .so

вообще я почти сразу написал что с аналогом точки входа я разобрался...

просто дать нужным функциям атрибуты constructor и destructor

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