Hi, trying to build 5.9.1 (from downloaded qt-everywhere-opensource-src-5.9.1.tar.xz) on openSuse 42.2, I get linker errors in the qtmultimedia module, e.g.
.obj/qgstreameraudiodecodersession.o: In function `WinCC_OA::QGstreamerAudioDecoderSession::configureAppSrcElement(_GObject*, _GObject*, _GParamSpec*, WinCC_OA::QGstreamerAudioDecoderSession*)': /home/PACKAGES/qt/5.9.1/qt-everywhere-opensource-src-5.9.1/qtmultimedia/src/plugins/gstreamer/audiodecoder/qgstreameraudiodecodersession.cpp:154: undefined reference to `WinCC_OA::QGstAppSrc::setup(_GstElement*)' I found this symbol to be in the qgsttools_p lib but I fear the linker takes the lib from a wrong path. Looking into the qtmultimedia/src/plugins/gstreamer/audiodecoder/Makefile, I find the LIBS definition which I don't understand (Note that I'm building Qt with a namespace/libinfix): LIBS = $(SUBLIBS) -lqgsttools_p -L/usr/lib64 -L/home/abuild/rpmbuild/BUILD/qtmultimedia-opensource-src-5.9.1/lib -lQt5MultimediaWidgets -lQt5Multimedia -lQt5Widgets -lQt5Gui -lQt5Network -lQt5Core -lasound -L/home/PACKAGES/qt/5.9.1/qt-everywhere-opensource-src-5.9.1/qtmultimedia/lib -lQt5MultimediaWidgetsWinCC_OA -L/home/PACKAGES/qt/5.9.1/qt-everywhere-opensource-src-5.9.1/qtbase/lib -lQt5MultimediaWinCC_OA -lQt5WidgetsWinCC_OA -lQt5GuiWinCC_OA -lQt5NetworkWinCC_OA -lQt5CoreWinCC_OA -lGL -lpthread -lgstaudio-1.0 -lgstvideo-1.0 -lgstpbutils-1.0 -lgstapp-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lpulse-mainloop-glib -lpulse -lglib-2.0 A couple of questions: -) -lqgsttools_p as first argument BEFORE any -L<path> would search for it in my system dirs, which is wrong. -) why is -L/usr/lib64 there (should be a std. path, no?) -) From where the heck comes this path "/home/abuild/rpmbuild/BUILD/qtmultimedia-opensource-src-5.9.1/lib" ? I don't have a /home/abuild directory on my system. This is the ONLY Makefile in the whole Qt tree which contains this path -) -lQt5MultimediaWidgets and others: why are they used here instead of the namespaced/infixed versions, which are also given but later in the line ? I just removed manually all the wrong entries in that line, being now LIBS = $(SUBLIBS) -lasound -L/home/PACKAGES/qt/5.9.1/qt-everywhere-opensource-src-5.9.1/qtmultimedia/lib -lqgsttools_p -lQt5MultimediaWidgetsWinCC_OA -L/home/PACKAGES/qt/5.9.1/qt-everywhere-opensource-src-5.9.1/qtbase/lib -lQt5MultimediaWinCC_OA -lQt5WidgetsWinCC_OA -lQt5GuiWinCC_OA -lQt5NetworkWinCC_OA -lQt5CoreWinCC_OA -lGL -lpthread -lgstaudio-1.0 -lgstvideo-1.0 -lgstpbutils-1.0 -lgstapp-1.0 -lgstbase-1.0 -lgstreamer-1.0 -lgobject-2.0 -lpulse-mainloop-glib -lpulse -lglib-2.0 and with that line it links without errors. -- Best regards/Schöne Grüße Martin A: Because it breaks the logical sequence of discussion Q: Why is top posting bad? () ascii ribbon campaign - against html e-mail /\ - against proprietary attachments Geschenkideen, Accessoires, Seifen, Kulinarisches: www.lillehus.at _______________________________________________ Development mailing list [email protected] http://lists.qt-project.org/mailman/listinfo/development
