Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 41041 - qt 3.3 broke all of my KDE specific themes
Summary: qt 3.3 broke all of my KDE specific themes
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] KDE (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-02-09 16:29 UTC by Jason Clinton
Modified: 2004-09-02 14:39 UTC (History)
0 users

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


Attachments
Screenshot (qt-3.3.0-kde-3.png,92.10 KB, image/png)
2004-02-12 20:12 UTC, Nicolas Laplante
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jason Clinton 2004-02-09 16:29:42 UTC
I installed QT 3.3 this afternoon right after it came out and the KDE specific themes in /usr/kde/3.2/lib/kde3/plugins/ aren't listed in the KDE Styles control panel applet. It reverted to the 'Windows' look. The QT-specific themes are listed in the Styles control panel applet. What should I provide you for troubleshooting? emerge info?


Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Caleb Tennis (RETIRED) gentoo-dev 2004-02-09 17:42:29 UTC
A re-emerge of kdebase may be helpful.
Comment 2 Carsten Lohrke (RETIRED) gentoo-dev 2004-02-10 01:54:00 UTC
Caleb: May I attach my style problem here!? I merged kde with qt 3.2.3 and twice  with qt 3.3., reported it to bugs.kde.org (declard invalid), but don't have a clue if this problem is kde or gentoo trelated.

http://bugs.kde.org/show_bug.cgi?id=74337
Comment 3 Paul de Vrieze (RETIRED) gentoo-dev 2004-02-10 01:57:22 UTC
Basically qt plugins are versioned. QT will check the version of the plugin and in case of an incompatible version (based on the qt version it was build against) will not use it. qt 3.3 and qt 3.2 plugins are obviously incompatible, so you need to remerge all packages that contain these plugins.
Comment 4 Paul de Vrieze (RETIRED) gentoo-dev 2004-02-10 01:58:52 UTC
ps. plastik is from the kdeaddons package, so you'll need to remerge that too ;-/
Comment 5 Carsten Lohrke (RETIRED) gentoo-dev 2004-02-10 02:24:55 UTC
No Paul. Plastik is part of kdeartwork and I remerged this ebuild too.
Comment 6 Carsten Lohrke (RETIRED) gentoo-dev 2004-02-10 04:58:13 UTC
Argh - i just did it, recompiling kdeaddons fixed the problem, even though plastik is part of kdeartwork. Thx Paul!
Comment 7 Caleb Tennis (RETIRED) gentoo-dev 2004-02-10 05:01:59 UTC
I think we could try a hack to make the config build strings the same for 3.3 as for 3.2, but I'm not sure what else that would break.
Comment 8 Paul de Vrieze (RETIRED) gentoo-dev 2004-02-10 05:08:00 UTC
There are good chances that the plugins will actually not work with a new qt version. We might need to check it out though.
Comment 9 Caleb Tennis (RETIRED) gentoo-dev 2004-02-10 05:12:22 UTC
http://doc.trolltech.com/3.3/plugins-howto.html

It says:

Two different configurations of the same version of the Qt library are not binary compatible. The Qt library that loads the plugin uses the list of (missing) features to determine if the plugin is binary compatible. 

Note: There are cases where a plugin can use features that are available in two different configurations. However, the developer writing plugins would need to know which features are in use, both in their plugin and internally by the utility classes in Qt. The Qt library would require complex feature and dependency queries and verification when loading plugins. Requiring this would place an unnecessary burden on the developer, and increase the overhead of loading a plugin. To reduce both development time and application runtime costs, a simple string comparision of the build keys is used. 

My guess is that the addition of the ipv6 code has caused this binary incompatibility, which is why the configuration option shows up in the buildstring.
Comment 10 Carsten Lohrke (RETIRED) gentoo-dev 2004-02-10 05:28:00 UTC
A note in the Qt 3.3 ebuild would minimze forum/bugzilla support questions. ;)
Comment 11 Caleb Tennis (RETIRED) gentoo-dev 2004-02-10 05:30:38 UTC
You read my mind - just did it.

I'm assuming that kdelibs is the main package to be need to be re-emerged (since it provides the styles), along with kdeartwork/kdeaddons.

Dunno about kdebase...it provides designer plugins.
Comment 12 Jason Clinton 2004-02-10 06:44:25 UTC
Okay, for those just finding this bug, the solution is you must recompile kdelibs and kdeartwork. kdebase and kdeaddons have no effect. It's a limitation of moving between QT versions. This should be all that was broken.

Comment 13 Caleb Tennis (RETIRED) gentoo-dev 2004-02-10 06:49:44 UTC
Changing the ebuild:

-       use ipv6        && myconf="${myconf} -ipv6" || myconf="${myconf} -no-ipv6"
+       use ipv6        && myconf="${myconf} -ipv6"

Makes the buildstring look the same as from the 3.2.3 version, meaning that we may be able to avoid this step.  Any thoughts?

Comment 14 Carsten Lohrke (RETIRED) gentoo-dev 2004-02-10 07:02:11 UTC
Jason: Not remerging kdeaddons broke at least plastik .net style here. 
Comment 15 Caleb Tennis (RETIRED) gentoo-dev 2004-02-10 10:09:46 UTC
I'm working on a system in the ebuild which notifies the user of a change to their QT_BUILD_KEY after upgradting Qt, but I'm not finding any slick way of doing it.  I'm not sure if the new portage has some functionality I'm missing or what, but rest assured I'm trying to get this to be resolved a little nicer.
Comment 16 Nicolas Laplante 2004-02-12 20:12:38 UTC
Created attachment 25512 [details]
Screenshot

After emerging qt-3.3.0, and re-emerging kdelibs-3.2.0 and kdeartwork-3.2.0,
see what the K menu looks like with Plastik.
Comment 17 Donovan Long 2004-05-17 11:35:15 UTC
KDE external themes such as:
x11-themes/baghira
may also have to be manually reemerged... :-/
(baghira does)
Comment 18 Dennis Hildebrandt 2004-05-28 00:05:08 UTC
I've got just the same problem. I tried to reemerge qt, kdelibs, but without success. 
I noticed something strange: I cannot emerge any Program, which uses the qtlib, but I can compile it on my own. When I do not use portage, to configure this programm, there are no failures. Can it be, that there is something wrong in the kde_source_compile funktion in theese ebuilds?
Comment 19 Dennis Hildebrandt 2004-07-04 01:25:35 UTC
I figured out something else. The ./configure step works fine, if I change the configure script: I changed the line: 
###code:
if test -f actest.cpp && grep klineedit actest.cpp > /dev/null; then
	kde_cv_uic_plugins=yes
fi

Into

if test -f actest.cpp && grep -i klineedit actest.cpp > /dev/null; then
	kde_cv_uic_plugins=yes
fi

I think, the problem ist the misspelled word: klineedit. It should be spelled: KLineEdit.

With that, the configure step works fine, but the source code does not compile. It exits with different failures. 
Comment 20 Caleb Tennis (RETIRED) gentoo-dev 2004-09-02 14:39:48 UTC
should all be propagated out of portage now.