[devel] HTTP File Upload plugin for libpurple

Evgeniy Korneechev ekorneechev на altlinux.org
Пт Дек 7 15:49:24 MSK 2018


ДД! 
Пытаюсь собрать из гита: https://github.com/Junker/purple-xmpp-http-upload
(чтобы добавить модуль в Pidgin, для отправки файлов не как вложений, а ссылками на них).

Инструкция простая, clone, make, make install.
Перед этим установил следующие требуемые пакеты:
libgio-devel glib2-devel libpurple-devel libxml2-devel pidgin

Запуск сборки обломался как в https://github.com/Junker/purple-xmpp-http-upload/issues/8 :
$ make
  cc -Wall -I. -g -pipe -fPIC -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include \
  -I/usr/include/libpurple -I/usr/include/libxml2 -I./headers/jabber src/hfu_disco.c src/hfu_util.c \
  src/jabber_http_file_upload.c -o jabber_http_file_upload.so -g -pipe -fPIC -pthread \
  -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libpurple -I/usr/include/libxml2 \
  -I./headers/jabber -lgio-2.0 -lgobject-2.0 -lpurple -lglib-2.0 -lxml2 -lz -lm -ldl -L/usr/lib64/purple-2 -ldl -lm -ljabber -shared

/usr/bin/ld: cannot find -ljabber
collect2: error: ld returned 1 exit status
make: *** [jabber_http_file_upload.so] Error 1

Как и было указано в баге (правда там про федору) - поменял s/-ljabber/-lxmpp/g - сборка прошла успешно.
Готовый so-шник установился в /usr/lib64/purple-2.0

Запускаем Pidgin, идем в модули - модуль "XMPP HTTP File Upload" неактивен. В подробностях следующее:
Ошибка: undefined symbol: jabber_get_chat_name

Данный symbol упоминается как в собранной so, так и в libxmpp 
# readelf -Ws /usr/lib64/purple-2/libxmpp.so | grep jabber_get_chat
    55: 0000000000000000     0 FUNC    GLOBAL DEFAULT  UND jabber_get_chat_name

Куда копать? В чем может быть проблема?


PS Проверял в обновленной регулярке x86_64
PPS Проверил на упомянутой федоре 29 - там все нормально... Версия libpurple та же самая.
libpurple-devel-2.13.0-alt2.x86_64 против libpurple-devel-2.13.0-6.fc29.x86_64


-- 
WBR, Korneechev Evgeniy
BaseALT/ALTLinux Team


Подробная информация о списке рассылки Devel