After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 594127 - gstreamer-sharp does not build
gstreamer-sharp does not build
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-sharp
0.9.x
Other Linux
: Normal normal
: 0.9.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2009-09-04 11:43 UTC by Götz Waschk
Modified: 2009-09-11 08:49 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
build log (51.26 KB, text/plain)
2009-09-04 13:46 UTC, Götz Waschk
  Details
requested source (15.72 KB, text/plain)
2009-09-04 13:47 UTC, Götz Waschk
  Details
requested source (18.54 KB, text/x-csharp)
2009-09-04 13:47 UTC, Götz Waschk
  Details
use the right macro for mono (4.97 KB, patch)
2009-09-04 13:59 UTC, Götz Waschk
rejected Details | Review

Description Götz Waschk 2009-09-04 11:43:48 UTC
This is on Mandriva Cooker with latest released versions of gstreamer, mono and glib-sharp on Gnome 2.27:

make[3]: Entering directory `/home/goetz/gstreamer-sharp-0.9.0/gstreamer-sharp'
/usr/bin/gmcs -nowarn:0612 -debug -unsafe -out:gstreamer-sharp.dll -target:library  ./DynamicSignal.cs ./Application.cs ./Version.cs ./AssemblyInfo.cs ./GError.cs ./Value.cs ./PropertyInfo.cs ./EnumInfo.cs ./MiniObject.cs ./Marshaller.cs ./GstSharp.PadQueryTypeFunctionNative.cs ./PadQueryTypeFunction.cs ./TypeFindDelegates.cs ./PresetDefault.cs ./MixerMessage.cs ./NavigationMessage.cs ./NavigationEvent.cs ./NavigationQuery.cs ./coreplugins/*.cs ./glib-sharp/*.cs generated/*.cs ./coreplugins/generated/*.cs ./baseplugins/generated/*.cs
generated/AppSink.cs(127,50): error CS0102: The type `Gst.App.AppSink' already contains a definition for `Eos'
generated/AppSink.cs(39,29): (Location of the symbol related to previous error)
generated/AppSink.cs(449,35): error CS0102: The type `Gst.App.AppSink' already contains a definition for `PullPreroll'
generated/AppSink.cs(103,57): (Location of the symbol related to previous error)
generated/AppSink.cs(458,35): error CS0102: The type `Gst.App.AppSink' already contains a definition for `PullBuffer'
generated/AppSink.cs(115,56): (Location of the symbol related to previous error)
generated/AppSrc.cs(543,39): error CS0102: The type `Gst.App.AppSrc' already contains a definition for `EndOfStream'
generated/AppSrc.cs(234,57): (Location of the symbol related to previous error)
generated/AppSrc.cs(552,39): error CS0102: The type `Gst.App.AppSrc' already contains a definition for `PushBuffer'
[...]
Comment 1 Sebastian Dröge (slomo) 2009-09-04 11:49:39 UTC
Could you attach gstreamer-sharp/generated/AppSink.cs and AppSrc.cs to this bug?
Also, please attach a complete build log
Comment 2 Götz Waschk 2009-09-04 12:00:43 UTC
Nevermind, I have managed to make it build like this:
./configure; make MONO=mono

My previous build failed like this:
make[3]: Entering directory `/home/goetz/gstreamer-sharp-0.9.0/gstreamer-sharp'
../generator/gst-gapi_codegen.exe --generate ./gstreamer-api.xml \
                --outdir=./generated --customdir=. --assembly-name=gstreamer-sharp \
                --gluelib-name=gstreamersharpglue-0.10.dll --glue-filename=./glue/generated.c \
                --glue-includes="gst/gst.h gst/interfaces/colorbalance.h gst/interfaces/colorbalancechannel.h gst/interfaces/tuner.h gst/interfaces/tunerchannel.h gst/interfaces/tunernorm.h gst/cdda/gstcddabasesrc.h" \
        && cp ./override/URIHandlerAdapter.cs ./override/ColorBalanceAdapter.cs ./override/ColorBalance.cs ./override/Mixer.cs ./override/MixerAdapter.cs ./override/PropertyProbe.cs ./override/PropertyProbeAdapter.cs ./override/ProbeNeededHandler.cs ./override/NavigationAdapter.cs ./generated \
        && sed 's;public class ObjectManager;internal class ObjectManager;g' ./generated/ObjectManager.cs > ./generated/ObjectManager.cs.tmp \
        && mv ./generated/ObjectManager.cs.tmp ./generated/ObjectManager.cs \
        && touch generated-stamp
/bin/sh: ../generator/gst-gapi_codegen.exe: cannot execute binary file
make[3]: *** [generated-stamp] Error 126


So once the variable MONO is set, everything builds fine.
Comment 3 Götz Waschk 2009-09-04 13:46:47 UTC
Created attachment 142476 [details]
build log
Comment 4 Götz Waschk 2009-09-04 13:47:06 UTC
Created attachment 142477 [details]
requested source
Comment 5 Götz Waschk 2009-09-04 13:47:55 UTC
Created attachment 142479 [details]
requested source
Comment 6 Götz Waschk 2009-09-04 13:59:10 UTC
Created attachment 142480 [details] [review]
use the right macro for mono

This little patch fixes the problem for me.
Comment 7 Sebastian Dröge (slomo) 2009-09-04 17:21:22 UTC
Ah, that's fixed already in GIT. Sorry for this stupid bug.


commit 41af404c11df89814819169d0ab9a18ca8cd19dc
Author: Sebastian Dröge <sebastian.droege@collabora.co.uk>
Date:   Fri Sep 4 06:57:03 2009 +0200

    Only check for mono and set $(MONO) if we're building with mono
    
    For MS .NET $(MONO) will be set to nothing because .exe files
    can be executed directly there.

commit aa9a44aef70706048e1a504a2e15878dc3967fc3
Author: Gabriel Burt <gabriel.burt@gmail.com>
Date:   Thu Sep 3 15:47:27 2009 -0700

    Fix build on SUSE by finding Mono runtime