A Better Error Message?

David Faure faure at kde.org
Tue Apr 18 10:37:25 CEST 2006


On Mon, Apr 17, 2006 at 10:41:22PM -0400, Allen Winter wrote:
> Howdy CMakers,
> 
> I completely removed my KDE4 install dir, and then mistakenly tried to build kdepim
> before kdelibs4_snapshot.  So, I got the following from CMake:
> 
> Re-run cmake no build system arguments
> -- Check for working C compiler: gcc
> -- Check for working C compiler: gcc -- works
> -- Check size of void*
> -- Check size of void* - done
> -- Check for working CXX compiler: c++
> -- Check for working CXX compiler: c++ -- works
> ERROR: cmake/modules/FindKDE4Internal.cmake not found in /misc/home/winterz/.kde4/share/apps/;/usr/share/apps/
> -- Configuring done
> 
> 
> I was wondering if we could do better than the error message above.

Hey that was an improvement already; initially it said "KDE4 not found" or something like that :)

> Perhaps something like:  
> "ERROR: cmake/modules/FindKDE4Internal.cmake not found in /misc/home/winterz/.kde4/share/apps/;/usr/share/apps/
> Did you forget to install kdelibs first?"
> 
> Is this possible?

Well I didn't add a line like "Did you forget to install kdelibs first?", because
it could also be that the user installed kdelibs, but didn't adjust the PATH,
so another kde-config is found, which points to another directory.
That's why I thought it would be clear enough to simply point out the paths
that we're looking into. If cmake/modules/FindKDE4Internal.cmake isn't in this
list of paths, then obviously
- kdelibs hasn't been installed at all
or
- kdelibs hasn't been installed there.
   (which means either that PATH is wrong, or that kdelibs was installed to the wrong place)

Hmm, ok, the piece of information that might be missing to people is that
FindKDE4Internal is actually installed by kdelibs. I'm fine with adding that,
but since "did you forget to install" isn't the only possible reason for the problem,
I'm not sure how.

--
David Faure
faure at kde.org



More information about the Kde-buildsystem mailing list