我在正確鏈接qmake中的gstreamer庫時遇到了一些麻煩。Qt中的GStreamer鏈接器錯誤LNK2019和LNK2001 C++
所以,我有庫我寫的,它使用的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)" ([email protected]@@[email protected]@@Z)
和
WTAV.lib(mediapipeline.obj):-1: error: LNK2001: unresolved external symbol g_assertion_message_expr
我知道,頭文件和庫的路徑是正確的,因爲我得到的編譯一樣的錯誤「 gst/gst.h not found「當我改變他們。
我不知道我可能會做錯什麼,也許有人可以指出我在正確的方向。
在此先感謝。
解決:
我編譯與64位編譯器項目,並使用32位的GStreamer SDK ...謝謝你帕維爾Krasavin的指出這可能是問題。
什麼文件在'../ OtherLibs/GStreamer/Lib'中?它是否包含指定的庫? –
是的。這真的很奇怪。我最近從qt 5.1遷移到5.4。在5.1中,同一個項目仍然在5.1上運行。圖書館的路徑不同,但我做了必要的修改。我想知道問題的根源。可能是在我的圖書館中使用gstreamer或在我打電話給我的圖書館的應用程序中? –