GNOME Bugzilla – Bug 559383
sound-juicer not linked with libmusicbrainz3
Last modified: 2008-11-28 13:53:14 UTC
This is on Mandriva Cooker. The default linker flags contain -Wl,--as-needed. The configure script did detect both libmusicbrainz and libmusicbrainz3, both are passed to the linker but the resulting binary is linked with libmusicbrainz only. I guess in that case the musicbrainz3 metadata lookup cannot work.
How is that not a bug in your build tools?
AFAIK the --as-needed flag only links to libs that are needed. So is it possible that the musicbrainz3 stuff isn't used in sound-juicer?
It is very much used, I added this myself. Try using src/mb-test and adding debug in libjuicer/sj-metadata-musicbrainz3.c. I don't see how it could run properly if not linked against libmusicbrainz3 though...
I have added this to debug: diff -p -up libjuicer/sj-metadata-musicbrainz3.c~ libjuicer/sj-metadata-musicbrainz3.c --- libjuicer/sj-metadata-musicbrainz3.c~ 2008-09-05 12:23:30.000000000 +0200 +++ libjuicer/sj-metadata-musicbrainz3.c 2008-11-05 20:47:58.000000000 +0100 @@ -220,6 +220,9 @@ mb_list_albums (SjMetadata *metadata, ch char *id = NULL; char buffer[512]; int i; + + printf ("in mb_list_albums3\n"); + g_return_val_if_fail (SJ_IS_METADATA_MUSICBRAINZ3 (metadata), FALSE); priv = GET_PRIVATE (metadata); diff -p -up libjuicer/sj-metadata-musicbrainz.c~ libjuicer/sj-metadata-musicbrainz.c --- libjuicer/sj-metadata-musicbrainz.c~ 2008-09-05 10:54:12.000000000 +0200 +++ libjuicer/sj-metadata-musicbrainz.c 2008-11-05 20:48:10.000000000 +0100 @@ -280,6 +280,8 @@ mb_list_albums (SjMetadata *metadata, ch char data[256]; int num_albums, i, j; + printf ("in mb_list_albums\n"); + g_return_val_if_fail (metadata != NULL, NULL); g_return_val_if_fail (SJ_IS_METADATA_MUSICBRAINZ (metadata), NULL); priv = SJ_METADATA_MUSICBRAINZ (metadata)->priv; This is the output: ./mb-test /dev/sr0 in mb_list_albums Submit URL: http://mm.musicbrainz.org/bare/cdlookup.html?id=zRQsPcaXVHlN52P6A19qCPHGLYE-&tracks=10&toc=1+10+263283+150+35490+51798+88653+113482+131391+159804+177563+205527+232250 Source: MusicBrainz Album ID: 73c90c4a-03de-4ea4-9057-41862e170b23 ASIN: B001FWRYU6 'Dolores', by Bohren & der Club of Gore Track 1; Title: Staub; Artist: Bohren & der Club of Gore Duration: 470 sec Track 2; Title: Karin; Artist: Bohren & der Club of Gore Duration: 217 sec Track 3; Title: Schwarze Biene (Black Maja); Artist: Bohren & der Club of Gore Duration: 491 sec Track 4; Title: Unkerich; Artist: Bohren & der Club of Gore Duration: 331 sec Track 5; Title: Still Am Tresen; Artist: Bohren & der Club of Gore Duration: 238 sec Track 6; Title: Welk; Artist: Bohren & der Club of Gore Duration: 378 sec Track 7; Title: Von Schn?beln; Artist: Bohren & der Club of Gore Duration: 236 sec Track 8; Title: Orgelblut; Artist: Bohren & der Club of Gore Duration: 372 sec Track 9; Title: Faul; Artist: Bohren & der Club of Gore Duration: 356 sec Track 10; Title: Welten; Artist: Bohren & der Club of Gore Duration: 413 sec
Do you need more information?
Is that run with or without -Wl,--as-needed? If the former, are you sure you compiled with musicbrainz3 support? If the latter, again, how is that not a bug in your build toolchain?
It was built without --as-needed and with musicbrainz3.
You're allowed to say "I told you so". We were defining HAVE_MUSIZBRAINZ3... 2008-11-28 Bastien Nocera <hadess@hadess.net> * configure.in: Fix compiling with musicbrainz3, yay for typos (Closes: #559383)