Skip to content
This repository has been archived by the owner on Jul 4, 2023. It is now read-only.

qt-gstreamer 1.2.0 (new formula) #40491

Closed
wants to merge 1 commit into from

Conversation

hannesweisbach
Copy link

Signed-off-by: Hannes Weisbach hannes.weisbach@mailbox.tu-dresden.de

if build.with? "qt-dir"
args << "-DCMAKE_PREFIX_PATH:PATH=#{ENV["HOMEBREW_QTGSTREAMER_QT"]}"
else
args << "-DCMAKE_PREFIX_PATH:PATH=#{Formula[build.with? "qt5" ? "qt5" : "qt"].prefix}"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this line is failing; needs some parentheses

@hannesweisbach hannesweisbach force-pushed the qt-gstreamer branch 2 times, most recently from 36895cc to 59667b2 Compare June 9, 2015 13:49
@hannesweisbach
Copy link
Author

Ok, I have incorporated all suggestions. I also tried building against 'qt', but that failed, so I made qt-gstreamer depend on qt5.

Thank you for your feedback.

depends_on "gst-plugins-base"
depends_on "boost"
depends_on "doxygen" => :optional
# does not build against 'qt', because moc trips over boost stuff.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove this comment, thanks.

Builds only against qt5, because moc trips over boost stuff when
building against qt.

Signed-off-by: Hannes Weisbach <hannes.weisbach@mailbox.tu-dresden.de>
@DomT4
Copy link
Member

DomT4 commented Jun 26, 2015

@BrewTestBot test this please

@DomT4
Copy link
Member

DomT4 commented Jun 26, 2015

There's still a lot of build failure here, even against qt5:

/usr/local/opt/qt5/lib/QtOpenGL.framework/QtOpenGL /usr/local/opt/qt5/lib/QtQml.framework/QtQml /usr/local/opt/qt5/lib/QtNetwork.framework/QtNetwork /usr/local/opt/qt5/lib/QtWidgets.framework/QtWidgets /usr/local/opt/qt5/lib/QtGui.framework/QtGui /usr/local/opt/qt5/lib/QtCore.framework/QtCore 
20 errors generated.
make[2]: *** [src/QGst/CMakeFiles/Qt5GStreamer.dir/objectstore.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
20 errors generated.
make[2]: *** [src/QGst/CMakeFiles/Qt5GStreamer.dir/init.cpp.o] Error 1
/usr/local/Cellar/cmake/3.2.3/bin/cmake -E cmake_progress_report /tmp/qt-gstreamer20150626-7348-1j7cgck/qt-gstreamer-1.2.0/CMakeFiles  63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
[ 40%] Built target gstqt5videosink
20 errors generated.
make[2]: *** [src/QGst/CMakeFiles/Qt5GStreamer.dir/value.cpp.o] Error 1
make[1]: *** [src/QGst/CMakeFiles/Qt5GStreamer.dir/all] Error 2
make: *** [all] Error 2

@hannesweisbach
Copy link
Author

It works for me locally, so I don't know what I can do to fix that. It seems some Qt macros are not defined and stuff from libc++ cannot be found (wtf?). I will try to replicate the failures with --super-env.

@dogmaphobic
Copy link

I’ve spent an ungodly number of hours trying to get qt-gstreamer to build on Mac OS (with no success) and now I bumped into this attempt at creating a homebrew formula for it. I see this pull is having the same errors I’m seeing in my own attempt (not using homebrew):

  • QTGLIB_EXPORT is never defined
  • Compiler (clang/libstdc++) discrepancy

@hannesweisbach What is your environment and how did you get it to build locally? Would you mind posting the output of your brew install -vd qt-gstreamer.rb?

For my project, having a homebrew formula for this would help tremendously.

Thanks!

@hannesweisbach
Copy link
Author

@dogmaphobic: Yes it does build locally for me (with brew and without brew). However, I have not yet tried building with brew in superenv.

I'm currently somewhat time constrained (plus qt-gstreamer works for me). I'll try to find time later today or over the weekend.

@hannesweisbach
Copy link
Author

@dogmaphobic: here is my build: http://pastebin.com/NMgqa8M9
My system is very old and I had a few versions of Qt installed over time (brew, manual, Qt installer), so there might be something wrong to make it work me. Maybe you spot something.

@dogmaphobic
Copy link

@hannesweisbach, nah... Thanks for posting your build but there is no apparent significant difference. There is a minor difference with the cmake version, but when I started working on this, I was using the same version you used. The only other difference is the sequence of the build due to the different number of CPU cores. If there is a difference, it's in the environment, which is not reflected in either output. All visible build options are identical.

This is quite baffling. I will continue looking into this. I have to. My current project depends on this to work in order to support Mac OS.

Thanks again

@hannesweisbach
Copy link
Author

@dogmaphobic I've looked into the superenv-stuff and realised, that it is used by default. So now I'm at a loss. Does building qt-gstreamer from git work for you?

@dogmaphobic
Copy link

No, I have the same exact errors with either build type. Not using brew at all (local gstreamer, qt, etc) or using all brew, I get the same errors. One of them I can understand. It's a conflict related to using exoteric c++11 features and how they differ between gcc and clang. The other is a total mystery for now. cmake fails to export some defines. QTGLIB_EXPORT in particular.

@hannesweisbach
Copy link
Author

QTGLIB_EXPORT is not supposed to be exported by CMake, it's defined in src/QGlib/global.h in qt-gstreamer. It depends on QtGLib_EXPORTS or Qt5GLib_EXPORTS, but it should be #defined either way.

@dogmaphobic
Copy link

Sorry, I copied/pasted the wrong version (all uppercase), but the problem remains :) It's supposed to be defined in src/QGlib/CMakeFiles/Qt5GLib.dir/flags.make but it doesn't seem to work. That's what I meant about cmake.

@hannesweisbach
Copy link
Author

@dogmaphobic: I see. src/QGlib/CMakeFiles/Qt5GLib.dir/flags.make for me contains the CXX_DEFINES:

CXX_DEFINES = -DQTGLVIDEOSINK_NAME=\"qt5glvideosink\" -DQTVIDEOSINK_NAME=\"qt5videosink\" -DQT_CORE_LIB -DQT_NO_DEBUG -DQT_NO_KEYWORDS -DQWIDGETVIDEOSINK_NAME=\"qwidget5videosink\" -DQt5GLib_EXPORTS

And for you -DQt5GLib_EXPORTSis missing?

I don't see how that would cause QTGLIB_EXPORT to not be defined, since src/QGlib/global.hcontains:

#if defined(QtGLib_EXPORTS) || defined(Qt5GLib_EXPORTS)
# define QTGLIB_EXPORT Q_DECL_EXPORT
#else
# define QTGLIB_EXPORT Q_DECL_IMPORT
#endif

So either way, QTGLIB_EXPORT has to be defined.

That said, I couldn't figure out for the live of me where QtGLib_EXPORTS or Qt5GLib_EXPORTS is defined. I'm asking now on the qt-gstreamer developer mailing list.
Have you considered filing a bug against qt-gstreamer?

@bfontaine
Copy link
Contributor

Any update on this?

@hannesweisbach
Copy link
Author

I have not heard back from the qt-gstreamer people. I cannot reproduce these build-errors locally.

@MikeMcQuaid
Copy link
Member

Let's try once more otherwise we might just need to pass on this 😭

@MikeMcQuaid
Copy link
Member

@BrewTestBot test this please

1 similar comment
@DomT4
Copy link
Member

DomT4 commented Oct 12, 2015

@BrewTestBot test this please

@DomT4
Copy link
Member

DomT4 commented Oct 12, 2015

Still very much refusing to build on the CI so I guess we'll have to pass for now 😢. If you hear back from upstream at all & they can shed some light on the situation we'd be happy to review a fresh PR. Thanks for the submission ❤️

@DomT4 DomT4 closed this Oct 12, 2015
@Homebrew Homebrew locked and limited conversation to collaborators Jul 10, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants