ilya |
|
Темы:
18
Сообщения:
77
Участник с: 15 июля 2011
|
Имеем не мэинстрим ЯП, который позволяет использовать системные вызовы из динамических библиотек. Вот как найти по имени функции требуемую библиотеку (.so) в Линуксе? В оффтопик оси есть msdn, с явными именами бибилиотеки, в Линуксе пока применяю пимерно следующее # Ищем имя либы, по ф-ции gtk_init nm -DA *.so* | grep -w gtk_init Есть мысли? |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Можно сначала и поподробнее? Ибо вопрос очень странный, и вполне возможно, что изначальная задача гораздо проще решается другими методами. |
ilya |
|
Темы:
18
Сообщения:
77
Участник с: 15 июля 2011
|
NatrioМожно и подробнее! ;) Я как старый маньяк-извращенц, фанатею от ЯП Forth, а точнее от SPF4 - http://spf.sourceforge.net/ Есть возможность вызывать ф-ции как в С (dlopen,), но как искать имя требуемой .so-шки + константы из хедеров .h (это можно и ручкми)? |
Natrio |
|
Темы:
47
Сообщения:
4763
Участник с: 08 января 2011
|
Насколько я понимаю, обычно сначала принимается решение использовать в программе какую-либо библиотеку, а потом из неё выбираются подходящие функции. В данном случае программа уже имеется, функции уже используются, и нужно заменить имена бинарных файлов библиотек, чтобы оно заработало в линуксе? Я не нахожу тривиальных инструментов для этой не очень тривиальной задачи, так что по-видимому, найденный вами способ трудно сильно упростить. Разве что сделать из этого скрипт, чтобы не набирать каждый раз. |
aduser |
|
Темы:
0
Сообщения:
26
Участник с: 21 августа 2010
|
ilyaСамый очевидный способ - grep'нуть по системной директории с хедерами. В официальных арчевских репах библиотеки идут со стрипнутыми символами, так что способ через nm может не сработать. |