[Bug 667802] New: Trouble cross-compiling gst-plugins-bad decklink element for Windows using MinGW

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Thu Jan 12 10:56:59 PST 2012


https://bugzilla.gnome.org/show_bug.cgi?id=667802
  GStreamer | gst-plugins-bad | 0.10.22

           Summary: Trouble cross-compiling gst-plugins-bad decklink
                    element for Windows using MinGW
    Classification: Platform
           Product: GStreamer
           Version: 0.10.22
        OS/Version: All
            Status: UNCONFIRMED
          Severity: major
          Priority: Normal
         Component: gst-plugins-bad
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: joaopizani at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


Hello guys and thank you very much for such an amazing project such as
GStreamer.

During the last few days I have been trying to cross-compile the latest version
of gst-plugins-bad using MinGW to no avail. I ran into a succession of issues,
fixed by me with increasingly nastier workarounds... I am first going to give
you a glimpse into my system configuration and then describe the problems I
got:


Compiler: MinGW-w64 1.0+20110523-1build2-ubuntu
Host system: Ubuntu Linux 11.10
Target system: Windows 7

I have mostly been using the instructions provided here:
http://gstreamer.freedesktop.org/wiki/Win32_Cross_Compiling_With_Mingw

And these instructions are very good indeed. In fact, I have been able to
compile gst-core, gst-good and gst-ugly, and I could also run simple pipelines
with wine.

I only start to have problems when I try to compile gst-plugins-bad. At first,
I noticed that the decklink plugin had its compilation disabled by default.
Then, tinkering with autoconf.ac I "forced" HAVE_DECKLINK=yes (which I think I
shouldn't have done). This because there was no windows option in a case that
detected the decklink feature in autoconf.ac. Why is that?

After forcing compilation, the second problem happened: My "comutil.h" file
from "/usr/i686-mingw-w64/include" caused a parse error with mingw-gcc at line
35, saying something along these lines:

"Expected type-identifier before '...' token"

The referred line contained a "throw" specifier in a function declaration with
an ellipsis "...". I proceeded to EDIT comutil.h (which I know I REALLY
shouldn't do) and removed the throw specifier. Then, I was faced with my last
error, with which I'm struggling right now. The error is:

"In file included from gstdecklink.h:29:0,
                 from gstdecklinksrc.cpp:39:
win/DeckLinkAPI.h:19:0: warning: ignoring #pragma warning  [-Wunknown-pragmas]
gstdecklinksrc.cpp: In function 'gboolean gst_decklink_src_start(GstElement*)':
gstdecklinksrc.cpp:503:46: error: 'CreateDeckLinkIteratorInstance' was not
declared in this scope"

So, there seems to a declaration missing in some header. Indeed, I found that
the declaration for CreateDeckLinkIteratorInstance is present only in
linux/DeckLinkAPI.h, but not in win/DeckLinkAPI.h. The implementation is in
win/DeckLinkAPIDispatch.cpp - but where is the declaration in the Win case??

Please help me to fing a solution for this enigma! :)

Sorry for perhaps a superficial report, but I'll be more than happy to provide
all details if someone asks for attachments...

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list