LINUX.ORG.RU

Создание DLL под Linux/Unix


0

0

Как создать *.so с экспортируемыми функциями описанными в *.def файле В main.def EXPORT setValue getValue .......

В Makefile gcc -Wall -fPIC -g -c demo_dynamic.c gcc -g -o -Wall -shared -Wl --export-dynamic demo_dynamic.so demo_dynamic.o -ldl

При линковки в demo_dynamic.so имена функций следующие setValue__Fv, getValue__Fv или еще какая нибудь абракодабра после имени функций... Как подключить *.def файл и создать *.so с нормальными экспортируемыми именами!?

anonymous

.DEF файлов в ELF-библиотеках не предусмотрено.

У Вас такие имена функций, что я подозреваю, что используется Си++, а не Си. Уточните, пожалуйста. Если используется Си++, то это - совершенно нормальные "mangled"-имена (имя метода + типы параметров).

anonymous
()

Спасибо за ответ. да! я использую Си++... Хорошо, если это нормально... то как мне экспортировать имена функций, чтобы я мог инициализировать их неприписывая им __Fv и т.п. .... getValue = (PROC)dlsym(hinstLib, "getValue__Fv"); .... Заранее спасибо...

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