Bug 61808 - kde applications should detect the right path and install themselves into it
Summary: kde applications should detect the right path and install themselves into it
Status: RESOLVED INTENTIONAL
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: RedHat Enterprise Linux Linux
: NOR wishlist
Target Milestone: ---
Assignee: KDevelop Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-07-29 17:33 UTC by tnagy
Modified: 2004-11-21 04:34 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description tnagy 2003-07-29 17:33:39 UTC
Version:           kde 3.1.1a (using KDE KDE 3.1.1a)
Installed from:    RedHat RPMs
Compiler:          gcc 3.2 
OS:          Linux

This is not entirely related to gideon, but rather to all kde applications. 

Everytime I install a kde application (make -f Makefile.cvs;./configure;make;make install), I have to specify the path of my kde installation (--prefix=/usr) otherwise everything is installed in /usr/local, or worse, in /opt.... In many cases I forgot to add --prefix=/usr and I had to re-(./configure --prefix=/rightprefix;make;make install).

What's more, the icons, translations, menus .. may not appear in the application because of that path problem. I've encountered this problem on many distributions (slackware, mandrake, redhat ..)

Isn't that possible to have a default file (eg: /mykdepath/kdebase.sh) which will say 'hey, kde base dir is here' and then the ./configure script will find automatically where to install the applications accordingly (scanning very quickly the most common paths), or at least warn the user that the default kde dir is not where the program is being installed ????

This, in my opinion, would make the installation process a lot more user friendly.
Comment 1 Rex Dieter 2003-07-29 18:31:45 UTC
 >Everytime I install a kde application  
>(make -f Makefile.cvs;./configure;make;make install), 
 
You'd get the behavior you want if you just replaced 
./configure 
with 
./configure --prefix `kde-config --prefix` 
Comment 2 Thiago Macieira 2003-07-29 19:52:57 UTC
KDEDIR and KDEDIRS environment variables are automatically read as well. You should 
have them set. It's a good practice. 
 
If kde-config is found, it'll be used to find kdelibs's prefix. 
 
But remember that you're allowed to install applications anywhere. That's why --prefix is 
still allowed. If you install your application somewhere else (and you're allowed to), all you 
have to do is add that prefix to KDEDIRS. 
Comment 3 tnagy 2003-07-30 01:49:35 UTC
In fact I know how to do to make it work. I just want to point out a usability
problem which is annoying to everybody except us - the developers.


** Most linux distributions do not set QTDIR and KDEDIR, and this feature is not
advertised much.

** The readme very seldom contains a notice "please type export
KDEDIR=`kde-config --prefix` before ./configure;make;make install"

** Why couldn't ./configure detect itself KDEDIR ? Isn't that what ./configure
is supposed to do ? detect the best paths for installation ?

** It is deliberately pushing the users into the pitfall : it does not warn that
the program is not being installed in the standard distro path and that the
pixmaps will perhaps not appear properly in the program.

** Generally speaking "./configure --prefix `kde-config --prefix` " is more
complicated than "./configure", I doubt that it adds more value to the
installation process.


Try to think a little bit more about the end-users !! How could the kde desktop
be more user-friendly and still rely on obscure commands for the installation of
the kde programs ?!?!?

Put a "WONTFIX VERY SOON" on this bug/wish, but do not ignore it please !


Comment 4 Olivier Blin 2003-07-30 02:36:16 UTC
The configure script should directly use kde-config, without waiting for the
user to do so.
It's one of the goal of configure scripts to detects such prefixes, the user
hasn't to do this.
It won't requires more work to the user because kde-config is already in common
parts of KDE, so if the users compiles a KDE app, he will need the package that
owns kde-config at some step.
Other systems such as pkg-config can be used, but kde-config is certainly more
accurate for use with KDE.
So, can someone give a valid point not to call kde-config from the configure
script ?
Comment 5 tnagy 2003-07-31 15:54:56 UTC
This is a good idea - use kde-config automatically if no prefix is specified by
the user.
Comment 6 Thiago Macieira 2003-08-01 13:40:17 UTC
1) QTDIR is not only mentioned, it's required. It's in Qt's INSTALL and in qt-copy's README.
qt-copy 
 
2) KDEDIR specifies KDE's dir. Your application doesn't have to install in KDE's prefix. You're 
allowed to install it anywhere. KDE doesn't care. But if you do, you have to add its prefix to 
KDEDIRS (note the plural). 
 
3) --prefix is never assumed for any application. It's always /usr/local if you don't specify it. 
For all applications. IMO, it's better to leave it that way than to make KDE applications 
behave differently. 
 
4) kde-config IS called from ./configure. It just doesn't set --prefix because no other 
program does (see 3). Besides, I don't even know if autoconf provides a method of setting 
the prefix variable... 
 
I'm moving this again to WONTFIX. If anyone wants to fix it, please provide a patch.