Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build breakage #377

Open
JazzMaster opened this issue May 29, 2016 · 9 comments
Open

build breakage #377

JazzMaster opened this issue May 29, 2016 · 9 comments

Comments

@JazzMaster
Copy link

JazzMaster commented May 29, 2016

oldxul before anyone gets in a tizzy.

.
.
.

LD sbMetadataHandlerTaglib.so
MetadataHandlerTaglib.o: In function sbMetadataHandlerTaglib::ReadImageOgg(TagLib::Ogg::XiphComment*, int, nsACString&, unsigned int*, unsigned char**)': /home/me/Desktop/code/nite-nite/components/mediacore/metadata/handler/taglib/src/MetadataHandlerTaglib.cpp:1697: undefined reference toTagLib::String::to8Bitabi:cxx11 const'
/home/me/Desktop/code/nite-nite/build/rules.mk:903: recipe for target 'sbMetadataHandlerTaglib.so' failed
make[8]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled/components/mediacore/metadata/handler/taglib/src'
MetadataHandlerTaglib.o: In function sbMetadataHandlerTaglib::RemoveAllImagesOGG(TagLib::Vorbis::File*, int)': /home/me/Desktop/code/nite-nite/build/rules.mk:366: recipe for target 'libs' failed make[7]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled/components/mediacore/metadata/handler/taglib' /home/me/Desktop/code/nite-nite/build/rules.mk:366: recipe for target 'libs' failed make[6]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled/components/mediacore/metadata/handler' /home/me/Desktop/code/nite-nite/build/rules.mk:366: recipe for target 'libs' failed make[5]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled/components/mediacore/metadata' /home/me/Desktop/code/nite-nite/build/rules.mk:366: recipe for target 'libs' failed make[4]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled/components/mediacore' /home/me/Desktop/code/nite-nite/build/rules.mk:330: recipe for target 'libs_tier_componentsbase' failed make[3]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled' /home/me/Desktop/code/nite-nite/build/rules.mk:353: recipe for target 'tier_componentsbase' failed make[2]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled' /home/me/Desktop/code/nite-nite/build/rules.mk:273: recipe for target 'default' failed make[1]: Leaving directory '/home/me/Desktop/code/nite-nite/compiled' Makefile:197: recipe for target 'build' failed [me@livingroom] ~/Desktop/code/nite-nite $ /home/me/Desktop/code/nite-nite/components/mediacore/metadata/handler/taglib/src/MetadataHandlerTaglib.cpp:1291: undefined reference toTagLib::String::to8Bitabi:cxx11 const'
collect2: error: ld returned 1 exit status
make[8]: *** [sbMetadataHandlerTaglib.so] Error 1
make[7]: *** [libs] Error 2
make[6]: *** [libs] Error 2
make[5]: *** [libs] Error 2
make[4]: *** [libs] Error 2
make[3]: *** [libs_tier_componentsbase] Error 2
make[2]: *** [tier_componentsbase] Error 2
make[1]: *** [default] Error 2
make: *** [build] Error 2
-FAILED

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/34668755-build-breakage?utm_campaign=plugin&utm_content=tracker%2F230233&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F230233&utm_medium=issues&utm_source=github).
@freaktechnik
Copy link
Member

I assume this is on a newer GCC? Because our pre-built taglib doesn't work with that. That's also a major reason why there are no new builds for Ubuntu. The soltuion I had in mind was to build the deps too, but getting that set up on launchpad takes ages.

@darealshinji
Copy link
Contributor

darealshinji commented May 29, 2016

I think it's an issue with C++11 code linking against C++14 libraries. Building the deps on Ubuntu <16.04 isn't a big deal (see my personal PPA), but I think for Ubuntu 16.04 the deps need to be build with C++14 enabled and that didn't work the last time I tried it. Another solution would be to build all the dependent C++ libraries with -std=c++11 enabled and include them or link them statically.

By the way I was actually able to run NG on 16.04 when I build the deps and the program itself on 14.04 and linked everything with -static-libstdc++. However MP3 playback didn't work. I don't know if that issue was caused by NG or by the gstreamer version provided in 16.04.

@JazzMaster
Copy link
Author

no its taglib. i got it thx. try 1.8 from the net and build from scratch, then force installed package from system. neither. two parts to that and nobody caring to update the website. 1- install fluendo. 2- copy it into the private folder. 3- theres a link missing, but the check for it shouldnt be. looking for num 3 right now, no errors in loading the gstreamer plugin like 'not linked' so seems to be the hard link is missing..

@JazzMaster
Copy link
Author

built without futzing the c11.. does xul6 need it? mebbe. cmake-gui makes light work of that HELL... v 1.13A, nothing else builds for me.

@JazzMaster
Copy link
Author

I take that back. still getting, even with debug build:
and looks like debugging version of 113 has a memory leak.
1-Error: "30. A Beautiful Lie" was unable to play because the decoder (MPEG-1 Layer 3 (MP3) decoder) can not be found.
2-Error: GStreamer warning: No decoder available for type 'audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)3, rate=(int)48000, channels=(int)2, parsed=(boolean)true'. Additional information: gsturidecodebin.c(874): unknown_type_cb (): /GstPlayBin2:player/GstURIDecodeBin:uridecodebin1
3-Error: GStreamer error: Your GStreamer installation is missing a plug-in. Additional information: gstdecodebin2.c(3576): gst_decode_bin_expose (): /GstPlayBin2:player/GstURIDecodeBin:uridecodebin1/GstDecodeBin2:decodebin21:
no suitable plugins found
4-Error: GStreamer error: Your GStreamer installation is missing a plug-in. Additional information: gstdecodebin2.c(3576): gst_decode_bin_expose (): /GstPlayBin2:player/GstURIDecodeBin:uridecodebin1/GstDecodeBin2:decodebin21:
no suitable plugins found
5-Error: GStreamer error: GStreamer encountered a general stream error. Additional information: gstbaseparse.c(2890): gst_base_parse_loop (): /GstPlayBin2:player/GstURIDecodeBin:uridecodebin1/GstDecodeBin2:decodebin21/GstMpegAudioParse:mpegaudioparse0:
streaming stopped, reason not-linked
will verify with the hard gst playback option but banshee plays the music fine, so it seems to be not catching the fluendo correctly. I have both arch installed. I even made the hard link.

@JazzMaster
Copy link
Author

hmmm...switching modes removes the plugin in private folder? hmmm investigating...

@JazzMaster
Copy link
Author

its a gstreamer issue. not the software fault.

hmmm.

gst-launch playbin uri=file:///media/me/media/mine/mp3z-iTuneys/30-Secs2mars/A\ Beautiful\ Lie/30.\ A\ Beautiful\ Lie.mp3
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
** Message: don't know how to handle audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)3, rate=(int)48000, channels=(int)2, parsed=(boolean)true

Missing element: MPEG-1 Layer 3 (MP3) decoder

ERROR: from element /GstPlayBin:playbin0: You do not have a decoder installed to handle this file. You might need to install the necessary plugins.
Additional debug info:
gstplaybasebin.c(2323): prepare_output (): /GstPlayBin:playbin0
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

ive noticed that someone else has a smattering of plugins, and fluendo is supposed to fix this as the standard now is NOT to use linux hackish lame version but the industry supported fluendo instead. same as mandrakes paid-for-play dvd player(lin-powerDvD?). fluendo just so happens to be free.

lemme work this out.

@JazzMaster
Copy link
Author

JazzMaster commented Jul 9, 2016

this is where the issue is. horse if you ask me, to require a codec, require another codec and not provide the depends. like liblame or libmad, this should "just work". much like libdvdcss on vlc or mplayer, if installed.

totem:
Carlos has just installed Ubuntu on his computer and has connected his ipod to it. When he tries to play an mp3 file from it, he gets a dialog suggesting to install gstreamer0.10-plugins-ugly to play that file. (installed)

Michael is trying to play a video, the codec required to decode the video part is not installed. Instead of playing only the audio track with visual effect totem suggests to install gstreamer0.10-ffmpeg so the video content can be decoded too. (not available, but for older ubuntus it is.)

@JazzMaster
Copy link
Author

I may have a partial solution. gstreamer I once thought is looking for a missing ffmpeg plugin yet clearly its gone from debian jessie and above too. I dont even think were calling gstreamer correctly.
note the differences:

gst-launch-0.10 -v filesrc location="/media/me/media/mine/mp3z-iTuneys/30-Secs2mars/A Beautiful Lie/30. A Beautiful Lie.mp3" ! mp3parse ! flump3dec
Setting pipeline to PAUSED ...
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
/GstPipeline:pipeline0/GstMPEGAudioParse:mpegaudioparse0.GstPad:src: caps = audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)3, rate=(int)48000, channels=(int)2, parsed=(boolean)true

--we stop here--

/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:sink: caps = audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)3, rate=(int)48000, channels=(int)2, parsed=(boolean)true
/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:src: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)48000, channels=(int)2

ERROR: from element /GstPipeline:pipeline0/GstFileSrc:filesrc0: Internal data flow error.
-exactly what it sez-- you arent calling me correctly, go RTFM!

Additional debug info:
gstbasesrc.c(2625): gst_base_src_loop (): /GstPipeline:pipeline0/GstFileSrc:filesrc0:
streaming task paused, reason not-linked (-1)
-ignore this-

Execution ended after 3046356 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstMPEGAudioParse:mpegaudioparse0.GstPad:src: caps = NULL
Setting pipeline to NULL ...
Freeing pipeline ...

[me@livingroom] ~ $ gst-launch-0.10 -v filesrc location="/media/me/media/mine/mp3z-iTuneys/30-Secs2mars/A Beautiful Lie/30. A Beautiful Lie.mp3" ! mp3parse ! flump3dec ! autoaudiosink

Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstMPEGAudioParse:mpegaudioparse0.GstPad:src: caps = audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)3, rate=(int)48000, channels=(int)2, parsed=(boolean)true

/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:sink: caps = audio/mpeg, mpegversion=(int)1, mpegaudioversion=(int)1, layer=(int)3, rate=(int)48000, channels=(int)2, parsed=(boolean)true

/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:src: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)48000, channels=(int)2

/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0/GstPulseSink:autoaudiosink0-actual-sink-pulse.GstPad:sink: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)48000, channels=(int)2

/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0.GstGhostPad:sink: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)48000, channels=(int)2

/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0.GstGhostPad:sink.GstProxyPad:proxypad0: caps = audio/x-raw-int, endianness=(int)1234, signed=(boolean)true, width=(int)16, depth=(int)16, rate=(int)48000, channels=(int)2

Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstPulseSinkClock
/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0/GstPulseSink:autoaudiosink0-actual-sink-pulse: volume = 0.079435
/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0/GstPulseSink:autoaudiosink0-actual-sink-pulse: mute = FALSE
/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0/GstPulseSink:autoaudiosink0-actual-sink-pulse: volume = 0.079435
/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0/GstPulseSink:autoaudiosink0-actual-sink-pulse: mute = FALSE

Got EOS from element "pipeline0".
Execution ended after 245403068623 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0/GstPulseSink:autoaudiosink0-actual-sink-pulse.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstAutoAudioSink:autoaudiosink0.GstGhostPad:sink: caps = NULL
/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstFluMp3Dec:flump3dec0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstMPEGAudioParse:mpegaudioparse0.GstPad:src: caps = NULL
Setting pipeline to NULL ...
Freeing pipeline ...

-which actually plays the music-
firthermore:
To investigate the capabilities of a element you can use gst-inspect.

On a terminal you can type for example:
gst-inspect flump3dec

--nabble.com

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants