#1370 Build fails with reference to LircCommander and LircClient

Future Release
closed
nobody
None
5
2014-06-25
2012-11-07
Kirill Müller
No

On my system, compiling rosegarden (r13137) fails with the error message shown below.

Ubuntu Quantal, latest updates, prerequisites from -dev packages. Package liblircclient-dev is in version 0.9.0-0ubuntu3. Please let me know if you need more information.

src/gui/application/LircCommander.o: In function `Rosegarden::LircCommander::LircCommander(Rosegarden::LircClient*, Rosegarden::RosegardenMainWindow*)':
LircCommander.cpp:(.text+0x27): undefined reference to `vtable for Rosegarden::LircCommander'
src/gui/application/LircCommander.o: In function `Rosegarden::LircCommander::slotExecute(char const*)':
LircCommander.cpp:(.text+0x4e1): undefined reference to `Rosegarden::LircCommander::closeTransport()'
LircCommander.cpp:(.text+0x4f1): undefined reference to `Rosegarden::LircCommander::toggleTransportVisibility()'
LircCommander.cpp:(.text+0x501): undefined reference to `Rosegarden::LircCommander::play()'
LircCommander.cpp:(.text+0x511): undefined reference to `Rosegarden::LircCommander::stop()'
LircCommander.cpp:(.text+0x521): undefined reference to `Rosegarden::LircCommander::record()'
LircCommander.cpp:(.text+0x531): undefined reference to `Rosegarden::LircCommander::rewind()'
LircCommander.cpp:(.text+0x541): undefined reference to `Rosegarden::LircCommander::rewindToBeginning()'
LircCommander.cpp:(.text+0x551): undefined reference to `Rosegarden::LircCommander::fastForward()'
LircCommander.cpp:(.text+0x561): undefined reference to `Rosegarden::LircCommander::fastForwardToEnd()'
LircCommander.cpp:(.text+0x571): undefined reference to `Rosegarden::LircCommander::toggleRecord()'
LircCommander.cpp:(.text+0x581): undefined reference to `Rosegarden::LircCommander::trackDown()'
LircCommander.cpp:(.text+0x591): undefined reference to `Rosegarden::LircCommander::trackUp()'
LircCommander.cpp:(.text+0x5a1): undefined reference to `Rosegarden::LircCommander::trackMute()'
LircCommander.cpp:(.text+0x5b1): undefined reference to `Rosegarden::LircCommander::trackRecord()'
LircCommander.cpp:(.text+0x5c1): undefined reference to `Rosegarden::LircCommander::undo()'
LircCommander.cpp:(.text+0x5d1): undefined reference to `Rosegarden::LircCommander::redo()'
LircCommander.cpp:(.text+0x5e1): undefined reference to `Rosegarden::LircCommander::aboutrg()'
LircCommander.cpp:(.text+0x5f1): undefined reference to `Rosegarden::LircCommander::editInEventList()'
LircCommander.cpp:(.text+0x601): undefined reference to `Rosegarden::LircCommander::editInMatrix()'
LircCommander.cpp:(.text+0x611): undefined reference to `Rosegarden::LircCommander::editInPercussionMatrix()'
LircCommander.cpp:(.text+0x621): undefined reference to `Rosegarden::LircCommander::editAsNotation()'
LircCommander.cpp:(.text+0x631): undefined reference to `Rosegarden::LircCommander::quit()'
src/gui/application/LircClient.o: In function `Rosegarden::LircClient::LircClient()':
LircClient.cpp:(.text+0x11): undefined reference to `vtable for Rosegarden::LircClient'
src/gui/application/LircClient.o: In function `Rosegarden::LircClient::~LircClient()':
LircClient.cpp:(.text+0x184): undefined reference to `vtable for Rosegarden::LircClient'
src/gui/application/LircClient.o: In function `Rosegarden::LircClient::readButton()':
LircClient.cpp:(.text+0x235): undefined reference to `Rosegarden::LircClient::buttonPressed(char const*)'
collect2: error: ld returned 1 exit status
make: *** [rosegarden] Error 1

Discussion

  • We're going to have to look at this again when one of us is using the latest bleeding edge Ubuntu.

     
    • milestone: 12.12 --> Future Release
     
  • Kirill Müller
    Kirill Müller
    2012-12-07

    Thank you. This seems to occur only if I use make -j2; regular make builds the project just fine.

     
  • I just tried to build rosegarden on a Quantal VM. Using make, make -j2 and make -j4 successfully created the binary (out of svn r13334).

    Does this problem still exist?

     
  • Ted Felix
    Ted Felix
    2013-07-22

    I've never seen this. Those names are all signals. So it's as if somehow the .moc file didn't get created or built or linked in. It's the kind of thing where I would recommend a distclean and bootstrap. Unless the OP has objections, I think this one can be closed.

     
  • Kirill Müller
    Kirill Müller
    2013-09-14

    Closing is fine for me.

     
  • Closing per submitter request. Glancing back, it looks like the sort of thing that would have likely resolved after a clean build.

     
    • status: open --> closed