On Wed, 28 Oct 2020 16:02:02 -0500 Ken Moffat via blfs-dev wrote: > On Wed, Oct 28, 2020 at 02:36:06AM -0500, Marty Jack via blfs-dev wrote: > > > > > > On Tue, 27 Oct 2020 17:00:15 -0500 Ken Moffat via blfs-dev wrote: > > > (Cc: to support if I remember, in case anyone else hits this) > > > > > > Starting to upgrade my systems for whatever has caused today's > > > gstreamer releases. Most are still running 9.1 with 1.16.2. > > > Normally I build gstreamer well before qt, but trying to upgrade has > > > changed that. > > > > > > In gst-plugins-base it finds all the Qt items it tests for, but then > > > fails: > > > > > > FAILED: tests/examples/overlay/qtgv-videooverlay.p/qtgv-videooverlay.cpp.o > > > c++ -Itests/examples/overlay/qtgv-videooverlay.p -Itests/examples/overlay > > > -I../tests/examples/overlay -I. -I.. -Igst-libs -I../gst-libs > > > -Igst-libs/gst/video -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include > > > -I/usr/include/gstreamer-1.0 -I/opt/qt5/include -I/opt/qt5/include/QtGui > > > -I/opt/qt5/include/QtWidgets -fdiagnostics-color=always -pipe > > > -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -O3 > > > -Waggregate-return -Wmissing-declarations -Wredundant-decls -Wundef > > > -Wwrite-strings -Wformat -Wformat-nonliteral -Wformat-security > > > -Winit-self -Wmissing-include-dirs -Waddress -Wno-multichar -Wvla > > > -Wpointer-arith -march=native -fstack-clash-protection > > > -D_FORTIFY_SOURCE=2 -fstack-protector-strong -D_GLIBCXX_ASSERTIONS > > > -DQT_GUI_LIB -DQT_WIDGETS_LIB -fPIC -pthread -DHAVE_CONFIG_H -MD -MQ > > > tests/examples/overlay/qtgv-videooverlay.p/qtgv-videooverlay.cpp.o -MF > > > tests/examples/overlay/qtgv-videooverlay.p/qtgv-videooverlay.cpp.o.d -o > > > tests/examples/overlay/qtgv-videooverlay.p/qtgv-videooverlay.cpp.o -c > > > ../tests/examples/overlay/qtgv-videooverlay.cpp > > > ../tests/examples/overlay/qtgv-videooverlay.cpp:29:10: fatal error: > > > QTimer: No such file or directory > > > 29 | #include <QTimer> > > > | ^~~~~~~~ > > > > > > > > > Adding -Dexamples=disabled worked around it. > > > > > > I got a similar failure in 1.18.1. > > > > > > Looking at Qt files on the current system, I see several > > > #include <QtCore/QTimer> > > > > > > In current 1.18.1 I can see references in > > > ./tests/examples/overlay/qtgv-videooverlay.cpp:#include <QTimer> > > > ./tests/examples/overlay/qt-videooverlay.cpp:#include <QTimer> > > > ./tests/examples/gl/qt/videooverlay/videooverlay.cpp:#include <QTimer> > > > ./gst-libs/gst/video/videooverlay.c: * #include <QTimer>; > > > > > > That last one is a comment on how to use the file. > > > > > > I guess that perhaps these should all be changed to #include > > > <QtCore/QTimer> ? But looking back they have lived there since at > > > least 5.11.1. Perhaps something in Qt changed, or maybe nobody else > > > is affected ? > > > > > > For me the workaround is adequate. > > > > > > ĸen > > > -- > > > The people next door oppress me all night long. I tell them: I work > > > all day, a man's got to have some time to learn to play the tuba. > > > That's oppression, that is. [ Guards! Guards! ] > > > -- > > > http://lists.linuxfromscratch.org/listinfo/blfs-dev > > > FAQ: http://www.linuxfromscratch.org/blfs/faq.html > > > Unsubscribe: See the above information page > > > > As best I know, Qt recommends just using the class rather than prefixing > > the containing module (QtCore). > > The official Qt examples are all coded this way. > > If nothing else the documentation of the QTimer class says Header: > > #include <QTimer> > > Nothing has changed recently in Qt about the way includes are expected to > > be done. > > > > You should have had -I/opt/qt5/include/QtCore in the compilation command. > > That should have come from the Cflags in Qt5Core.pc. > > That should have been tested by > > gst-plugins-base-1.18.1/tests/examples/gl/meson.build at line 4. > > Maybe that is a fruitful path to investigate what is wrong with your setup. > > > > My configure looks like > > > > Run-time dependency qt5 (modules: Core) found: YES 5.15.1 (pkg-config) > > Run-time dependency qt5 (modules: Core, Gui, Widgets) found: YES 5.15.1 > > (pkg-config) > > Run-time dependency qt5 (modules: OpenGL) found: YES 5.15.1 (pkg-config) > > > > and I do not get the failure that you get. > Interesting - I temporarily reverted that change before trying to do > another 9.1 system, failed similarly to previous update. But my > output from meson is nothing like what you posted, I guess you used > configure? > > My qt5 meson output, and the lines before/after: > > Run-time dependency sdl found: NO (tried pkgconfig and cmake) > WARNING: rcc dependencies will not work reliably until this upstream issue is > fixed: https://bugreports.qt.io/browse/QTBUG-45460 > Found qmake: /usr/bin/qmake-qt5 (5.15.1) > Run-time dependency qt5 (modules: Gui, Widgets) found: YES 5.15.1 (qmake-qt5) > Program moc-qt5 found: YES (/usr/bin/moc-qt5) > Detecting Qt5 tools > Found qmake: /usr/bin/qmake-qt5 (5.15.1) > moc: YES (/opt/qt5/bin/moc, 5.15.1) > uic: YES (/opt/qt5/bin/uic, 5.15.1) > rcc: YES (/opt/qt5/bin/rcc, 5.15.1) > lrelease: YES (/opt/qt5/bin/lrelease, 5.15.1) > Checking if "Linux joystick headers needed by jseek example" compiles: YES > Configuring gstreamer-allocators-1.0.pc using configuration > > That bug was fixed for 5.14.0. I'll revert my revert - the > workaround (not building examples) is adequate for my needs. > > ĸen > -- > The people next door oppress me all night long. I tell them: I work > all day, a man's got to have some time to learn to play the tuba. > That's oppression, that is. [ Guards! Guards! ] > -- > http://lists.linuxfromscratch.org/listinfo/blfs-dev > FAQ: http://www.linuxfromscratch.org/blfs/faq.html > Unsubscribe: See the above information page
No, I'm on meson (0.55.3). The snip I posted is above the snip you posted and mine is a little different in the area you posted. It looks as though you are happy with the outcome and won't be pursuing it further. However I tracked it down. For whatever reason you are not passing the tests in gst-libs/gst/gl/meson.build that leave build_gstgl = true. This causes tests/examples/meson.build to skip subdir gl. This causes the includes to be set from tests/overlay/meson.build. That file fails to mention Core in line 12. The tests/overlay/meson.build should mention Core which is in fact needed to build the overlay directory and that is a bug in that file. Your output line "Run-time dependency qt5" is coming from line 12. In my case build_gstgl is set, tests/examples/gl and tests/examples/gl/qt do the Qt checks, and I get all the headers they both need. -- http://lists.linuxfromscratch.org/listinfo/blfs-dev FAQ: http://www.linuxfromscratch.org/blfs/faq.html Unsubscribe: See the above information page