Problems linking taglib 1.4

Göran Löfström goran at lofstrom.net
Thu Oct 18 00:50:39 CEST 2007


Hi all.

I have been trying for a couple of days now to build Taglib 1.4 on my
WD Mybook World Edition NAS. Everything goes smoothly until the final
linker kicks in, and I get the errors below. No compile errors, except
that I get a message stating 'find' to have used an argument that my
systems' find does not understand.

The Linux version is some generic GNU version, with a lot of special tweaks on
it to minimize memory consumption. Busybox is used, for one.

This is what g++ reports:
 g++ -dumpmachine = arm-linux-uclibc
 g++ -dumpversion = 3.4.2

Now, granted my C++ skills leave a lot to be desired, but how come the
linking works for the subfolders, but not the last link? I feel it has
to be a configure issue, or something along that line.

Can you come up with any suggestions I would be most grateful. I am
really anxious to get taglib built to get my Mediatomb server working
even better.

Many thanks in advance

Goran



make[3]: Entering directory `/home/hedge/apps/taglib-1.4/taglib'
/bin/sh ../libtool --silent --mode=link --tag=CXX g++  -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wno-non-virtual-dtor -O2 -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common    -o libtag.la -rpath /usr/local/lib  -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -version-info 5:0:4 tag.lo fileref.lo audioproperties.lo ./mpeg/libmpeg.la ./ogg/libogg.la ./flac/libflac.la ./mpc/libmpc.la ./ape/libape.la ./toolkit/libtoolkit.la
.libs/fileref.o: In function `TagLib::FileRef::create(char const*, bool, TagLib::AudioProperties::ReadStyle)':
fileref.cpp:(.text+0x674): undefined reference to `TagLib::Vorbis::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle)'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::ID3v2Tag(bool)':
mpegfile.cpp:(.text+0x2f8): undefined reference to `TagLib::ID3v2::Tag::Tag()'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::ID3v1Tag(bool)':
mpegfile.cpp:(.text+0x344): undefined reference to `TagLib::ID3v1::Tag::Tag()'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::findID3v1()':
mpegfile.cpp:(.text+0x400): undefined reference to `TagLib::ID3v1::Tag::fileIdentifier()'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::save(int, bool)':
mpegfile.cpp:(.text+0x8e8): undefined reference to `TagLib::ID3v2::Tag::render() const'
mpegfile.cpp:(.text+0xa38): undefined reference to `TagLib::ID3v1::Tag::render() const'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::findID3v2()':
mpegfile.cpp:(.text+0xc44): undefined reference to `TagLib::ID3v2::Header::fileIdentifier()'
mpegfile.cpp:(.text+0xd10): undefined reference to `TagLib::ID3v2::Header::fileIdentifier()'
mpegfile.cpp:(.text+0xe10): undefined reference to `TagLib::ID3v2::Header::fileIdentifier()'
mpegfile.cpp:(.text+0xe74): undefined reference to `TagLib::ID3v2::Header::fileIdentifier()'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::read(bool, TagLib::AudioProperties::ReadStyle)':
mpegfile.cpp:(.text+0xf44): undefined reference to `TagLib::ID3v2::Tag::Tag(TagLib::File*, long, TagLib::ID3v2::FrameFactory const*)'
mpegfile.cpp:(.text+0xf54): undefined reference to `TagLib::ID3v2::Tag::header() const'
mpegfile.cpp:(.text+0xf58): undefined reference to `TagLib::ID3v2::Header::completeTagSize() const'
mpegfile.cpp:(.text+0xf68): undefined reference to `TagLib::ID3v2::Tag::header() const'
mpegfile.cpp:(.text+0xf6c): undefined reference to `TagLib::ID3v2::Header::tagSize() const'
mpegfile.cpp:(.text+0xfb8): undefined reference to `TagLib::ID3v1::Tag::Tag(TagLib::File*, long)'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle)':
mpegfile.cpp:(.text+0x1280): undefined reference to `TagLib::ID3v2::FrameFactory::instance()'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle)':
mpegfile.cpp:(.text+0x1360): undefined reference to `TagLib::ID3v2::FrameFactory::instance()'
./mpeg/.libs/libmpeg.a(mpegfile.o): In function `TagLib::MPEG::File::firstFrameOffset()':
mpegfile.cpp:(.text+0x1694): undefined reference to `TagLib::ID3v2::Tag::header() const'
mpegfile.cpp:(.text+0x1698): undefined reference to `TagLib::ID3v2::Header::completeTagSize() const'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::save()':
flacfile.cpp:(.text+0x470): undefined reference to `TagLib::ID3v1::Tag::render() const'
flacfile.cpp:(.text+0x594): undefined reference to `TagLib::ID3v2::Tag::render() const'
flacfile.cpp:(.text+0x698): undefined reference to `TagLib::ID3v2::Tag::render() const'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::ID3v2Tag(bool)':
flacfile.cpp:(.text+0x78c): undefined reference to `TagLib::ID3v2::Tag::Tag()'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::ID3v1Tag(bool)':
flacfile.cpp:(.text+0x7d8): undefined reference to `TagLib::ID3v1::Tag::Tag()'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::findID3v1()':
flacfile.cpp:(.text+0xc78): undefined reference to `TagLib::ID3v1::Tag::fileIdentifier()'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::findID3v2()':
flacfile.cpp:(.text+0xcfc): undefined reference to `TagLib::ID3v2::Header::fileIdentifier()'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::read(bool, TagLib::AudioProperties::ReadStyle)':
flacfile.cpp:(.text+0xd8c): undefined reference to `TagLib::ID3v2::Tag::Tag(TagLib::File*, long, TagLib::ID3v2::FrameFactory const*)'
flacfile.cpp:(.text+0xd9c): undefined reference to `TagLib::ID3v2::Tag::header() const'
flacfile.cpp:(.text+0xda0): undefined reference to `TagLib::ID3v2::Header::completeTagSize() const'
flacfile.cpp:(.text+0xdb0): undefined reference to `TagLib::ID3v2::Tag::header() const'
flacfile.cpp:(.text+0xdb4): undefined reference to `TagLib::ID3v2::Header::tagSize() const'
flacfile.cpp:(.text+0xe00): undefined reference to `TagLib::ID3v1::Tag::Tag(TagLib::File*, long)'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::File(char const*, TagLib::ID3v2::FrameFactory*, bool, TagLib::AudioProperties::ReadStyle)':
flacfile.cpp:(.text+0xfe8): undefined reference to `TagLib::ID3v2::FrameFactory::instance()'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::File(char const*, TagLib::ID3v2::FrameFactory*, bool, TagLib::AudioProperties::ReadStyle)':
flacfile.cpp:(.text+0x109c): undefined reference to `TagLib::ID3v2::FrameFactory::instance()'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle)':
flacfile.cpp:(.text+0x1150): undefined reference to `TagLib::ID3v2::FrameFactory::instance()'
./flac/.libs/libflac.a(flacfile.o): In function `TagLib::FLAC::File::File(char const*, bool, TagLib::AudioProperties::ReadStyle)':
flacfile.cpp:(.text+0x1200): undefined reference to `TagLib::ID3v2::FrameFactory::instance()'
./mpc/.libs/libmpc.a(mpcfile.o): In function `TagLib::MPC::File::save()':
mpcfile.cpp:(.text+0x384): undefined reference to `TagLib::ID3v1::Tag::render() const'
mpcfile.cpp:(.text+0x518): undefined reference to `TagLib::ID3v1::Tag::render() const'
./mpc/.libs/libmpc.a(mpcfile.o): In function `TagLib::MPC::File::ID3v1Tag(bool)':
mpcfile.cpp:(.text+0x6a0): undefined reference to `TagLib::ID3v1::Tag::Tag()'
./mpc/.libs/libmpc.a(mpcfile.o): In function `TagLib::MPC::File::findID3v1()':
mpcfile.cpp:(.text+0x9fc): undefined reference to `TagLib::ID3v1::Tag::fileIdentifier()'
./mpc/.libs/libmpc.a(mpcfile.o): In function `TagLib::MPC::File::findID3v2()':
mpcfile.cpp:(.text+0xa80): undefined reference to `TagLib::ID3v2::Header::fileIdentifier()'
./mpc/.libs/libmpc.a(mpcfile.o): In function `TagLib::MPC::File::read(bool, TagLib::AudioProperties::ReadStyle)':
mpcfile.cpp:(.text+0xb08): undefined reference to `TagLib::ID3v1::Tag::Tag(TagLib::File*, long)'
mpcfile.cpp:(.text+0xc00): undefined reference to `TagLib::ID3v2::Header::size()'
mpcfile.cpp:(.text+0xc24): undefined reference to `TagLib::ID3v2::Header::Header(TagLib::ByteVector const&)'
mpcfile.cpp:(.text+0xc3c): undefined reference to `TagLib::ID3v2::Header::completeTagSize() const'
collect2: ld returned 1 exit status
make[3]: *** [libtag.la] Error 1
make[3]: Leaving directory `/home/hedge/apps/taglib-1.4/taglib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/hedge/apps/taglib-1.4/taglib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/hedge/apps/taglib-1.4'
make: *** [all] Error 2




More information about the taglib-devel mailing list