Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 29100 - QT 3.2.1's plugin path (/usr/qt/3/plugins/) used as /var/tmp/portage/qt-3.2.1/image//usr/qt/3/plugins by apps
Summary: QT 3.2.1's plugin path (/usr/qt/3/plugins/) used as /var/tmp/portage/qt-3.2.1...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-09-19 04:34 UTC by Dan
Modified: 2003-10-02 13:27 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dan 2003-09-19 04:34:47 UTC
mythtv fails to start on qt 3.2.1, since it cannot find the sql plugin which is
in /usr/qt/3/plugins, an strace shows it's looking in
/var/tmp/portage/qt-3.2.1/image//usr/qt/3/plugins instead:

access("/var/tmp/portage/qt-3.2.1/image//usr/qt/3/plugins", F_OK) = -1 ENOENT
(No such file or directory)

downgrading QT to 3.1.2-r4 fixes this problem.

Reproducible: Always
Steps to Reproduce:
1. emerge QT with mysql support
2. emerge mythtv
3. run mythsetup and strace it

Actual Results:  
mythtv errors out not finding the sql driver, and strace shows
access("/var/tmp/portage/qt-3.2.1/image//usr/qt/3/plugins", F_OK) = -1 ENOENT
(No such file or directory)

Expected Results:  
It should be looking in /usr/qt/3/plugins/
Comment 1 Caleb Tennis (RETIRED) gentoo-dev 2003-09-19 08:00:28 UTC
Egads.  This is rather bad.  I don't run into this problem with my 
installation.  Any more debugging you can do would be most helpful. 
Comment 2 Dan 2003-09-19 08:07:28 UTC
Sure, I'll continue to mess with it - anything in particular you'd like me to try?
Comment 3 harakiri 2003-09-20 16:14:37 UTC
I've got the same problem. I can't run a qt-based program which uses the postgresql plugin. The program says: "QSqlDatabase warning: QPSQL7 driver not loaded". The driver is located in /usr/qt/3/plugins/

I tried to add the following line to /etc/env.d/45qt3:
LDPATH=/usr/qt/3/lib:/usr/qt/3/plugins/sqldrivers

I then ran env-update and ldconfig which now finds the correct driver. Nevertheless, I still get the same error message when starting my program.

I've also done ldd on the driver to ensure every dependency is satisfied. I'm now out of ideas...
Comment 4 Dan 2003-09-20 16:25:39 UTC
harakiri: if you run strace on your program is it looking for the plugin in the same directory as I described? run it like so:

strace programname &> straceoutput.txt

then open the file and do a search for the word "plugins" without the quotes. -Dan
Comment 5 harakiri 2003-09-20 16:49:11 UTC
You're absolutely right. Same location. Had never used strace before. Pretty nice tool!
Comment 6 Caleb Tennis (RETIRED) gentoo-dev 2003-09-21 15:00:45 UTC
I wonder if the directory location is cached somewhere? 
 
Look at the files in ~/.qt - do any of them specify where to find the libraries? 
Comment 7 harakiri 2003-09-21 22:36:57 UTC
I removed my .qt directory (rm -r ~/.qt) and recompiled my program. Same problem. No files in ~/.qt though (ls -a).
Comment 8 Christopher Hammel 2003-09-26 12:37:37 UTC
There is a extra ${D} in the confiure line


Old line

./configure -sm -thread -stl -system-zlib -system-libjpeg -verbose \
 -qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
 -system-libpng -ldl -lpthread -xft -platform linux-g++ -xplatform \
 linux-g++ -xrender -prefix ${D}${QTBASE} -fast ${myconf} || die


New line
./configure -sm -thread -stl -system-zlib -system-libjpeg -verbose \
 -qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
 -system-libpng -ldl -lpthread -xft -platform linux-g++ -xplatform \
 linux-g++ -xrender -prefix ${QTBASE} -fast ${myconf} || die
Comment 9 harakiri 2003-09-27 05:39:59 UTC
I can confirm that this fixes all my issues. Thanks Christopher -)
Comment 10 Caleb Tennis (RETIRED) gentoo-dev 2003-09-27 12:18:12 UTC
Are you using the sandbox?  I seem to recall having to put that in to keep
from having a sandbox violation.

Comment 11 harakiri 2003-09-27 12:55:02 UTC
No, I don't use sandbox...
Comment 12 Dan 2003-09-27 15:05:53 UTC
This fixes it for me, but qt won't compile like this with sandbox enabled.
-Dan
Comment 13 Caleb Tennis (RETIRED) gentoo-dev 2003-09-29 14:13:44 UTC
Q: Try adding -plugindir ${QTBASE}/plugins to the ebuild, enable the sandbox,
and re-emerge.  This is the fix I'm contemplating to fix this.
Comment 14 Dan 2003-10-01 02:19:13 UTC
Adding -plugindir ${QTBASE}/plugins compiles fine in a sandbox, and fixes
the problem with mythtv, I think we have a champ here :) -Dan
Comment 15 Caleb Tennis (RETIRED) gentoo-dev 2003-10-02 13:27:14 UTC
sounds good.  This will be going in as qt-3.2.1-r2 as it fixes quite a few
problems.