[ scummvm-Bugs-1435221 ] Linker error when compiling minimal ScummVM

SourceForge.net noreply at sourceforge.net
Mon Feb 20 15:20:46 CET 2006


Bugs item #1435221, was opened at 2006-02-20 15:20
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=1435221&group_id=37116

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Torbjörn Andersson (eriktorbjorn)
Assigned to: Nobody/Anonymous (nobody)
Summary: Linker error when compiling minimal ScummVM

Initial Comment:
While looking at a BS2 bug a while ago, I tried to
compile a minimal version with only the BS2 engine
included. At the time I had trouble building it, but
since someone else helped me diagnose the bug, I didn't
look any further into it.

Now I decided to try again, using the most recent SVN
snapshot. This is the configure command I used:

./configure --disable-scumm --disable-simon
--disable-sky --disable-sword1 --disable-queen
--disable-saga --disable-gob --disable-kyra
--disable-mt32emu --disable-scalers
--disable-hq-scalers --disable-mad --disable-flac
--disable-fluidsynth --disable-nasm

Which for me meant I ended up with the following features:

Engines:
    Broken Sword 2 (w/ mpeg2 cutscenes)

Backend... sdl
Looking for sdl-config... /usr/bin/sdl-config

Compiling seemed to go well, all the way to the final
linking, which produced the following output, which I'm
not sure quite how to interpret:

g++    backends/sdl/events.o backends/sdl/graphics.o
backends/sdl/sdl.o base/libbase.a
engines/sword2/libsword2.a gui/libgui.a
graphics/libgraphics.a sound/libsound.a
backends/libbackends.a common/libcommon.a  
-lvorbisfile -lvorbis -logg  -lasound  -lz  -lmpeg2
-L/usr/lib -lSDL -lpthread -o scummvm
backends/libbackends.a(alsa.o): In function
`MidiDriver_ALSA::close()':backends/midi/alsa.cpp:137:
undefined reference to `MidiDriver_MPU401::close()'
backends/libbackends.a(alsa.o): In function
`MidiDriver_ALSA':backends/midi/alsa.cpp:77: undefined
reference to `MidiDriver_MPU401::MidiDriver_MPU401()'
:backends/midi/alsa.cpp:77: undefined reference to
`MidiDriver_MPU401::MidiDriver_MPU401()'
backends/libbackends.a(alsa.o):(.gnu.linkonce.r._ZTI15MidiDriver_ALSA[typeinfo
for MidiDriver_ALSA]+0x8): undefined reference to
`typeinfo for MidiDriver_MPU401'
backends/libbackends.a(alsa.o):(.gnu.linkonce.r._ZTV15MidiDriver_ALSA[vtable
for MidiDriver_ALSA]+0x1c): undefined reference to
`MidiDriver_MPU401::property(int, unsigned int)'
backends/libbackends.a(alsa.o):(.gnu.linkonce.r._ZTV15MidiDriver_ALSA[vtable
for MidiDriver_ALSA]+0x30): undefined reference to
`MidiDriver_MPU401::setTimerCallback(void*, void
(*)(void*))'
backends/libbackends.a(alsa.o):(.gnu.linkonce.r._ZTV15MidiDriver_ALSA[vtable
for MidiDriver_ALSA]+0x38): undefined reference to
`MidiDriver_MPU401::allocateChannel()'
backends/libbackends.a(alsa.o): In function
`~MidiDriver_MPU401':./sound/mpu401.h:71: undefined
reference to `vtable for MidiDriver_MPU401'
:./sound/mpu401.h:71: undefined reference to `vtable
for MidiDriver_MPU401'
backends/libbackends.a(null.o): In function
`MidiDriver_NULL':backends/midi/null.cpp:26: undefined
reference to `MidiDriver_MPU401::MidiDriver_MPU401()'
backends/libbackends.a(null.o):(.gnu.linkonce.r._ZTV15MidiDriver_NULL[vtable
for MidiDriver_NULL]+0x14): undefined reference to
`MidiDriver_MPU401::close()'
backends/libbackends.a(null.o):(.gnu.linkonce.r._ZTV15MidiDriver_NULL[vtable
for MidiDriver_NULL]+0x1c): undefined reference to
`MidiDriver_MPU401::property(int, unsigned int)'
backends/libbackends.a(null.o):(.gnu.linkonce.r._ZTV15MidiDriver_NULL[vtable
for MidiDriver_NULL]+0x30): undefined reference to
`MidiDriver_MPU401::setTimerCallback(void*, void
(*)(void*))'
backends/libbackends.a(null.o):(.gnu.linkonce.r._ZTV15MidiDriver_NULL[vtable
for MidiDriver_NULL]+0x38): undefined reference to
`MidiDriver_MPU401::allocateChannel()'
backends/libbackends.a(null.o):(.gnu.linkonce.r._ZTI15MidiDriver_NULL[typeinfo
for MidiDriver_NULL]+0x8): undefined reference to
`typeinfo for MidiDriver_MPU401'
backends/libbackends.a(null.o): In function
`~MidiDriver_MPU401':./sound/mpu401.h:71: undefined
reference to `vtable for MidiDriver_MPU401'
:./sound/mpu401.h:71: undefined reference to `vtable
for MidiDriver_MPU401'
backends/libbackends.a(seq.o): In function
`MidiDriver_SEQ::close()':backends/midi/seq.cpp:97:
undefined reference to `MidiDriver_MPU401::close()'
backends/libbackends.a(seq.o): In function
`MidiDriver_SEQ':backends/midi/seq.cpp:56: undefined
reference to `MidiDriver_MPU401::MidiDriver_MPU401()'
:backends/midi/seq.cpp:56: undefined reference to
`MidiDriver_MPU401::MidiDriver_MPU401()'
backends/libbackends.a(seq.o):(.gnu.linkonce.r._ZTI14MidiDriver_SEQ[typeinfo
for MidiDriver_SEQ]+0x8): undefined reference to
`typeinfo for MidiDriver_MPU401'
backends/libbackends.a(seq.o):(.gnu.linkonce.r._ZTV14MidiDriver_SEQ[vtable
for MidiDriver_SEQ]+0x1c): undefined reference to
`MidiDriver_MPU401::property(int, unsigned int)'
backends/libbackends.a(seq.o):(.gnu.linkonce.r._ZTV14MidiDriver_SEQ[vtable
for MidiDriver_SEQ]+0x30): undefined reference to
`MidiDriver_MPU401::setTimerCallback(void*, void
(*)(void*))'
backends/libbackends.a(seq.o):(.gnu.linkonce.r._ZTV14MidiDriver_SEQ[vtable
for MidiDriver_SEQ]+0x38): undefined reference to
`MidiDriver_MPU401::allocateChannel()'
backends/libbackends.a(seq.o): In function
`~MidiDriver_MPU401':./sound/mpu401.h:71: undefined
reference to `vtable for MidiDriver_MPU401'
:./sound/mpu401.h:71: undefined reference to `vtable
for MidiDriver_MPU401'
collect2: ld returned 1 exit status
make: *** [scummvm] Error 1


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=418820&aid=1435221&group_id=37116




More information about the Scummvm-tracker mailing list