[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    kcontrol can't be started (Re: Questions about running KDE)
From:       David Faure <faure () kde ! org>
Date:       2006-11-30 18:10:30
Message-ID: 200611301910.31926.faure () kde ! org
[Download RAW message or body]

On Thu Nov 30 2006, you wrote:
> I added some debug info in the init(), it seemed to have the correct desktop 
> file parsed.
Yep.

> And in the kded/kbuildservicefactory.cpp, KBuildServiceFactory::createEntry() 
> returned kcontrol as a valid entry too.
Ok.

> However, I don't know where to dig more.  (I'm not that familiar with C++ 
> thinking).  Who called this createEntry()?
kbuildsycoca. But I think I know what the problem is.

> I attached my kbuildsycoca log with my own debug messages in this mail.  
> (blog.2)  I noticed that *most* applications that does not have m_strLibrary 
> attribute were not built into ksycoca.  But I'm not very sure if this 
> statement was right. (app.list is my result to run ktradertest.)
kcontrol is a binary, not a library, so no Library key is OK.

I think I know what's happening. The definition of your K menu is excluding kcontrol for some reason,
so it's been made unavailable even at the sycoca/trader level - this is a design decision I'm not too 
happy with, but that's how it has been implemented.

Hmm, strange though, you said you actually had kcontrol in the K menu... I wonder if that's from
another desktop file or something. Surely if KControl.desktop isn't in ksycoca it can't appear in the
K menu...

So I believe the culprit is some XML file in /etc/xdg, which is defines the menu layout.
Use "kde-config --path xdgconf-menu"  to find the actual places where those menu files are being found.
For instance I get:
/home/dfaure/.config/menus/:/etc/xdg/menus/:/d/kde/inst/kde3/etc/xdg/menus/
If you get something similar, I would suggest renaming /etc/xdg/menus to make it unavailable,
and then the KDE default menu (from the last dir, i.e. the kde prefix), will be used instead.
Re-run kbuildsycoca --noincremental after making that change.

Which distro are you using? The /etc/xdg/menus file are usually provided by the distro
(well, unless your kde install has put the stuff there directly, I guess).

-- 
David Faure, faure@kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).
 
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic