cannot find -lQtDBus with murmur.x86

Help
2007-07-12
2012-10-30
  • LinuXgitano

    LinuXgitano - 2007-07-12

    Hi,

    I get this error constantly when trying to compile a static murmur.x86 from svn with binserver.pl:

    -o release/moc_DBus_real.o release/moc_DBus_real.cpp
    g++ -L../../release -static -Wl,-rpath,/opt/qt4/lib -o ../../release/murmur release/murmur.o release/Server.o release/ServerDB.o release/Register.o release/ACL.o release/Group.o release/Channel.o release/Message.o release/Connection.o release/Player.o release/DBus.o release/moc_Server.o release/moc_ServerDB.o release/moc_Register.o release/moc_ACL.o release/moc_Channel.o release/moc_Connection.o release/moc_Player.o release/moc_DBus_real.o -L/opt/qt4/lib -lQtDBus -ldbus-1 -L/opt/qt4/lib -pthread -pthread -pthread -pthread -pthread -pthread -lQtSql -pthread -pthread -lQtXml -pthread -pthread -lQtNetwork -pthread -pthread -lQtCore -lz -lm -pthread -lgthread-2.0 -lrt -lglib-2.0 -lpthread -ldl
    /usr/bin/ld: cannot find -lQtDBus
    collect2: ld gab 1 als Ende-Status zurück
    make[1]: [../../release/murmur] Fehler 1
    make[1]: Leaving directory `/home/gitano/mumble/trunk/src/murmur'
    make:
    [release] Fehler 2

    This one appears on any distro i tried it (gentoo, archlinux, ubuntu); however, on each installation the libQtDbus.so.* libs are in the right paths and also the paths to qt4 are set properly in the murmur Makefiles:

    Gentoo: /usr/lib/qt4/; Arch: /opt/lib/qt4/; Ubuntu: /usr/lib/

    Really am out of ideas, any suggestions?

    greetz,
    gitano

     
    • LinuXgitano

      LinuXgitano - 2007-07-12

      Hi Thorvald,

      Ahh, thx for Your reply :... so i can try forever without static qt4, hehe :)

      [quote]
      That being said, why are you trying to recompile the static binary? If you have a working Qt on the platform, the dynamic binary will always be better. The static binary is something I ship so those who do not have Qt4 on their server can still run murmur.
      [/quote]

      Well, You said it allready: no qt4 for my customized homeserver available on which i wanted to test a murmur server, and no fun at all to build it for that installation... i think that static murmur build is a very nice idea. I know of quite a few people/ server admins who would appreciate not to go through the hassle of installing qt on their rootserver/ older machine/ etc. Btw, what exactly makes the dynamic build better compared to a static one, is it more stable?

      Anyways, compiling qt4-static now (with tons of stuff disabled, hrhr), wish me luck :D.

      greetz,
      gitano

      P.S.: Btw, the audiowizzard is sweeet :)

       
      • Thorvald Natvig

        Thorvald Natvig - 2007-07-12

        Ah, you want a SVN-client-compatible server. Then it makes sense. I couldn't understand why you didn't just use the 0.9.5 static binary on the SF.net download page.

        Anyway, static vs dynamic linking. Statically linked programs are static. Let's say there's a security bug found in glibc. You upgrade glibc, and none of your programs are vulnerable anymore. However, the static ones need to be rebuilt to include the new static library. Static programs are much larger -- they include all the libraries, and unlike dynamic programs, the libraries aren't shared between programs to conserve memory. Most libraries today are built to be dynamic, and some depend on this. Qt is actually one of them -- try having a dynamically linked Qt in /usr/local/Trolltech and then run the static binary. First thing it does? Checks for dynamic plugins (and crashes). And if you should happen to start linking in a dynamic library (like, for example, libGL.so.1, which by convention always is dynamic), "fun things" start happening.

        So the only upside of a static binary is that you ship ONE binary that doesn't have library dependencies.

         
    • Thorvald Natvig

      Thorvald Natvig - 2007-07-12

      No distribution I know of includes static Qt libraries (libQtDbus.a, libQtCore.a and so on), which is what you need to get this to work. I have a separate installation of Qt4.3 with fully static build that I use for creating that binary.

      That being said, why are you trying to recompile the static binary? If you have a working Qt on the platform, the dynamic binary will always be better. The static binary is something I ship so those who do not have Qt4 on their server can still run murmur.

       

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks