Results 1 to 7 of 7

Thread: Fix: SEQ4 and QT shared library error

  1. #1
    Registered User
    Join Date
    Dec 2001
    Posts
    3

    Thumbs up Fix: SEQ4 and QT shared library error

    GCC3, QT2.3.2, Showeq 4 installed.

    This is the error :
    ./showeq: error while loading shared libraries: ./showeq: undefined symbol: _ZN2Qt9lightGreyE

    Recently had this problem and here is the fix for anyone else experiencing it.

    Its due to showeq using the old QT libraries for some reason. To see what QT library SEQ is loading, change to your SEQ binary dir and type 'ldd showeq'. One of the lines displayed will be the QT library SEQ is using, for me it was 'libqt-mt.so.2 => /usr/lib/libqt-mt.so.2'. In my case this was the incorrect library, all you need to do is update the symlinks to point to the correct library. I simply changed to my QT 2.3.2 lib dir and did a 'cp libqt-m* /usr/lib' though its probably better to change the symlinks by hand if you want to keep your older version around for some reason.

    Thanks to casey and floyd for providing the fix for me
    Last edited by digicide; 12-20-2001 at 11:48 PM.

  2. #2
    Registered User
    Join Date
    Dec 2001
    Posts
    204
    Could you possible put up the commands you used to change the link? I'm getting the same error and I don't know the syntax to change this...

    Thanks!

  3. #3
    Registered User
    Join Date
    Dec 2001
    Posts
    275
    cp libqt-m* /usr/lib


    IS the command he used, from the NEW QT directory

  4. #4
    Registered User
    Join Date
    Dec 2001
    Posts
    204

    Doh!

    Ah.... Sorry about that, I deserve the flame then!



    Windows user trying to live in a Linux world! Mistakes are bound to be made!

  5. #5
    Registered User
    Join Date
    Dec 2001
    Posts
    11

    easier way...

    Hey I think there is an easier way. I got this error so I checked the environment variables for QT:

    set | grep -i qt

    my QTDIR was still set to the old QT directory.

    just set QTDIR to the directory you installed QT in (/usr/local/qt if you followed the QT install instructions).

    if you're using bash, put this in your ~/.profile:

    QTDIR=/usr/local/qt
    export QTDIR

    and then:

    source ~/.profile

    that's all I had to do... no symlinks or anything.

    FF

  6. #6
    Registered User Zaphod's Avatar
    Join Date
    Dec 2001
    Posts
    648
    I'd suggest setting your QTDIR, PATH, and LD_LIBRARY_PATH correctly. So if for example you installed Qt under /usr/local/qt-2.3.2
    using the bash shell:
    Code:
    export QTDIR=/usr/local/qt-2.3.2
    export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
    export PATH=$QTDIR/bin:$PATH
    You may wish to put that into a shell script that you source when you want to use ShowEQ, so if you saved the script as /usr/local/etc/useqt232 you would do the following:
    Code:
     . /usr/local/etc/useqt232
    I would recommend against copying over the system libraries, as doing so may cause problems for KDE based programs.

    Enjoy,
    Zaphod

    * edited to correct vB code (@$#@# square brackets)
    Last edited by Zaphod; 12-21-2001 at 10:18 PM.
    Chief Software Engineer of the Apocalypse.
    http://showeq.doomed.to/
    SourceForge.net user: dohpaz.

    Personal thank you donations are now accepted.

  7. #7
    Registered User
    Join Date
    Dec 2001
    Posts
    3
    That does sound a much cleaner way of doing it

    Thinking back thats what was suggested to me by casey/floyd (cant remember who) but it was nearly 6am and went for the dirty quick fix :P

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

You may post new threads
You may post replies
You may post attachments
You may edit your posts
HTML code is Off
vB code is On
Smilies are On
[IMG] code is On