У меня возникли проблемы с правильным подключением библиотеки gstreamer в qmake.
Итак, у меня есть библиотека, которую я написал, которая использует gstreamer, я добавил следующие строки в файл .pro:
INCLUDEPATH += ../OtherLibs/GStreamer/Include
INCLUDEPATH += ../OtherLibs/GStreamer/Include/glib-2.0
INCLUDEPATH += ../OtherLibs/GStreamer/Include/libxml2
LIBS += -L../OtherLibs/GStreamer/Lib -lgobject-2.0 -lgstreamer-0.10 -lglib-2.0 -lgstapp-0.10
Я запускаю qmake, а затем компилирую и вообще не получаю никаких сообщений об ошибках.
Я использую эту библиотеку в другом проекте Qt и получаю:
WTAV.lib(contentvideo.obj):-1: error: LNK2019: unresolved external symbol g_assertion_message_expr referenced in function "protected: void __cdecl ContentVideo::load(class QString)" (?load@ContentVideo@@IEAAXVQString@@@Z)
а также
WTAV.lib(mediapipeline.obj):-1: error: LNK2001: unresolved external symbol g_assertion_message_expr
Я знаю, что пути к заголовкам и библиотекам верны, потому что при их изменении я получаю ошибки компиляции, такие как «gst / gst.h not found».
Я понятия не имею, что я могу делать неправильно, может быть, кто-то может указать мне правильное направление.
Заранее спасибо.
РЕШИТЬ:
Я компилировал проект с помощью 64-битного компилятора и использовал 32-битный SDK gstreamer … Спасибо, Павел Красавин, за то, что указал, что это может быть проблемой.
g_assertion_message_expr () экспортируется с помощью libglib-2.0.so. Вы должны проверить, что эта библиотека доступна по вашему пути (-L ../ OtherLibs / GStreamer / Lib). Также убедитесь, что эта библиотека имеет ту же архитектуру, что и ваш проект.