Hey all,

Following the directions on the Wiki for Debian 10
<http://wiki.rivendellaudio.org/index.php/Debian10> but on Ubuntu 18.04, I
get the following linker errors referencing musicbrainz:

  CXXLD    caed
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CRelease::ArtistCredit() const'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CQuery::~CQuery()'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CRecording::ISRCList() const'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CList::Item(int) const'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CQuery::CQuery(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, int)'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CRecording::Title[abi:cxx11]() const'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`typeinfo for MusicBrainz5::CRelease'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CMetadata::~CMetadata()'
/home/wmfo-admin/src/rivendell/lib/.libs/librd.so: undefined reference to
`MusicBrainz5::CNameCredit::JoinPhrase[abi:cxx11]() const'

I have the libraries installed:
/usr/lib/x86_64-linux-gnu/libmusicbrainz5.so
/usr/lib/x86_64-linux-gnu/libmusicbrainz5.so.2
/usr/lib/x86_64-linux-gnu/libmusicbrainz5.so.2.0.0
/usr/lib/x86_64-linux-gnu/libmusicbrainz5cc.so
/usr/lib/x86_64-linux-gnu/libmusicbrainz5cc.so.2v5
/usr/lib/x86_64-linux-gnu/libmusicbrainz5cc.so.2v5.0.0

It looks like we're not finding the Musicbrainz libs, although configure
seems to locate the headers and such. Configure logs show that we did see
the packages are installed:

configure:16774: checking for MUSICBRAINZ
configure:16781: $PKG_CONFIG --exists --print-errors "libdiscid
libmusicbrainz5 libcoverart"
configure:16784: $? = 0
configure:16798: $PKG_CONFIG --exists --print-errors "libdiscid
libmusicbrainz5 libcoverart"
configure:16801: $? = 0
configure:16839: result: yes

And output flags:
pkg_cv_MUSICBRAINZ_LIBS='-ldiscid -lmusicbrainz5 -lcoverart'
---
MUSICBRAINZ_LIBS='-ldiscid -lmusicbrainz5 -lcoverart'

Those symbols appear to exist in libmusicbrainz5.so:

wmfo-admin@riv18:~$ nm -gDC /usr/lib/x86_64-linux-gnu/libmusicbrainz5.so |
grep JoinPhrase
                 U MusicBrainz5::CNameCredit::JoinPhrase[abi:cxx11]() const

I see we are generating the correct flag (I think?) -lmusicbrainz5 but that
isn't getting the linker to see the libmusicbrainz5.so object. Any tips?

--Nick
_______________________________________________
Rivendell-dev mailing list
[email protected]
http://caspian.paravelsystems.com/mailman/listinfo/rivendell-dev

Reply via email to