rbutcher has asked for the wisdom of the Perl Monks concerning the following question:

I've sorted this out now.. CPAN seems to place 3 libraries, libsmokeq.so, so.1 and so.1.2.1 into its /build/PerlQt-3.008/smoke/qt/.libs directory. These are 6 mb in size and are in fact just 1 lib, with soft links. The libsmoke rpm lacks .so and is only 4.9 mb. I copied all three into /usr/lib/qt3/lib and it completed the install. I have no idea what the problem was, go figure. So... ignore the stuff below. Thanks Tachyon for responding, I can't find anything about KDE bindings in my Mandrake rpm list... does it effect something similar to what I did manually ? Do I need the KDEBindings for Perl-Qt development ? I really only want to install stuff if I know why. It all adds to my education !

Venerable sirs, this humble acolyte is being driven mad by this problem trying to install Perl-Qt from CPAN :-

LD_RUN_PATH="/usr/lib/qt3//lib:/usr/local/kde/lib" g++ -shared -L/usr/local/lib Qt.o handlers.o -Wl,--rpath -Wl,/usr/local/kde/lib -Wl,--rpath -Wl,/usr/lib/qt3//lib -o blib/arch/auto/Qt/Qt.so -L/usr/X11R6/lib -L/usr/lib/qt3//lib -lsmokeqt -lcrypt -lqt-mt -ldl -lresolv -lpng -lz -lm -lSM -lICE -lXext -lX11 -lSM -lICE -lpthread
/usr/bin/ld: cannot find -lsmokeqt
collect2: ld returned 1 exit status

I'm using ActiveState Perl5.8.4, Mandrake Linux 10, Gnome. I'm a newbie to Linux & the C compiler, my previous Perl experience was with Win32, so I also need a little help understanding these messages.
The smoke libs are in fact installed in /usr/local/lib and /usr/lib/qt3/lib but it seems to ignore them. ??? I thought it is supposed to build its own if they aren't there anyway. ????
thanks for your patience reading this far... I want to get starting building some kickass GUIs !

  • Comment on Solved : cannot find -lsmokeqt compiling Perl-Qt

Replies are listed 'Best First'.
Re: cannot find -lsmokeqt compiling Perl-Qt
by tachyon (Chancellor) on Aug 08, 2004 at 07:50 UTC

    Smoke and KDE go hand in hand, but you are running Gnome. You need to install the KDE bindings (you probably have not) to get the symlink set. See if you have them, if not install them.

    $ rpm -qa | grep kdebind kdebindings-devel-3.1-6 kdebindings-3.1-6

    Alternatively if you read the docs you will find.....

    If Smoke's linking fails or your Qt library was built with very specif +ic options, run Makefile.PL again with: perl Makefile.PL --with-threshold=0

    cheers

    tachyon

Re: Solved : cannot find -lsmokeqt compiling Perl-Qt
by tachyon (Chancellor) on Aug 08, 2004 at 09:07 UTC

    Just for the benfit of anyone who share this problem in the future could you just append a note on *how* it was solved (presume the KDE bindings issue?)

    cheers

    tachyon

      I didn'treally solve the problem of the make failure, I used a quick and nasty workaround... copied the three libsmoke.so libs from the temp. sources directory where CPAN had put them, to /usr/local/qt3/lib, and restarted the CPAN install, it then completed OK. The CPAN install script seems to forget whetre it's put the libsmoke files for some reason.
        Why did you prepend solved to the title? Don't do that.