Проблема с загрузкой плагина, Cannot load library ... undefined symbol ... |
Здравствуйте, гость ( Вход | Регистрация )
Проблема с загрузкой плагина, Cannot load library ... undefined symbol ... |
ViGOur |
27.7.2015, 11:07
Сообщение
#1
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Загружаю плагины так:
Мой плагин, который использует стороннюю библиотеку pjsip, не грузится и пишет:Цитата Error loading plugin: "libSipWrapper.so" - "Cannot load library ./Debug/libSipWrapper.so: (./Debug/libSipWrapper.so: undefined symbol: _ZTIN2pj4CallE)" Пробовал класть в папку с плагинами и бинарником используемые данным плагином либы (получил их с помощью ldd), всеравно та же ошибка. Не могу понять куда копать с ее исправлением. p.s. другие плагины, которые не используют сторонние lib'ы грузятся нормально... |
|
|
wiz29 |
27.7.2015, 18:07
Сообщение
#2
|
Старейший участник Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12 |
возможная проблема libSipWrapper.so - это rpath прописанные при сборке как абсолютные пути.
Либо относительные пути показывают несколько в иное место. |
|
|
ViGOur |
27.7.2015, 18:13
Сообщение
#3
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Неее, я просто сократил и скрыл пароли явки рабочие!
Если из плагина убрать обращение к pjsip, то он грузится нормально, но как только добавляю его, все, пишет ошибку... |
|
|
ViGOur |
28.7.2015, 10:06
Сообщение
#4
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Может в pro файле накосячил?
"SipWrapper.pro"
|
|
|
Iron Bug |
28.7.2015, 10:07
Сообщение
#5
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
а ты линкуешь к ней этот самый pjsip? скорее всего, там просто неразрешённые символы. в библиотеках это нормально, но если при линковке они остаются неразрешёнными - тогда могут быть проблемы.
P.S. он также может тянуть за собой другие зависимости. там какой-то вызов Call, судя по символу. почитай про его зависимости. |
|
|
ViGOur |
28.7.2015, 10:46
Сообщение
#6
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Да, линкую. Но вроде все должно быть нормально, разрешено должно быть все.
Попробую сейчас плагин переделать в app, посмотрим как себя поведет бинарник, а там видно будет что с ним там делать... |
|
|
ViGOur |
28.7.2015, 15:52
Сообщение
#7
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Получилось воспроизвести при компиляции app, походу я сбил случайно сборку, делая configure, с новыми параметрами...
Думается мне, что поправив эту сборку, заработает и плагин. Ошибки начинаются с такой строки: Цитата ... sipcall.cpp:6: undefined reference to `pj::Call::Call(pj::Account&, int)' Так что Iron Bug, ты была полностью права про неразрешенные линки! ----------------------------- Добавление ----------------------------- Все немного оказалось не так, в pro файле для pjsip при использовании pjsua2 не хватало вот таких вот строк: мало ли кому пригодится...
|
|
|
Текстовая версия | Сейчас: 20.4.2024, 4:49 |