GNOME Bugzilla – Bug 518635
NAS plugin doesn't build due to audio/audio.h namespace conflict
Last modified: 2008-02-25 18:32:39 UTC
Please describe the problem: The nassink plugin includes <audio/audiolib.h>, which in my case is: /usr/include/audio/audiolib.h <audio/audiolib.h> in turn includes <audio/audio.h>, but since the gstreamer include dir is in the includes-path of the compiler, and gstreamer has an <audio/audio.h> too, the gstreamer header gets included instead of: /usr/include/audio/audio.h This causes compilation to fail as /usr/include/audio/audio.h defines lots of datatypes needed by /usr/include/audio/audiolib.h I've worked around this by adding these lines above "#include <audio/audiolib.h> /* HACK HACK HACK, gst has an audio/audio.h, and so has nas and nas needs its own not the gstreamer one, so we forcably include the nas one using an absolute path, which is a BIG BIG HACK HACK HACK HACK HACK! */ #include </usr/include/audio/audio.h> I must say I don't know a proper way to fix this easily. Steps to reproduce: Actual results: Expected results: Does this happen every time? Other information:
It seems to build just fine for me. There shouldn't be an audio/audio.h in GStreamer's includes, the includes should only contain the top-level directory so that you'd need to do gst/audio/audio.h, no?
My bad, seems somehow my gst install got fscked-up on my laptop, somehow all dirs/headers that are under /usr/include/gstreamer-0.10/gst also are directly under /usr/include/gstreamer-0.10, so I have them all twice, once in the wrong place. Closing.