KDE 4.6 Beta1 tarballs (4.5.80) uploaded
Kevin Kofler
kevin.kofler at chello.at
Mon Nov 22 22:07:34 CET 2010
On Monday 22 November 2010, Alexander Neundorf wrote:
> What a package can do is to install a FooConfig.cmake into a cmake-specific
> directory (see the find_package() documentation in the cmake man page),
> e.g. PREFIX/lib/cmake/<package>/
> This is done with OkularConfig.cmake:
> http://websvn.kde.org/trunk/KDE/kdegraphics/okular/CMakeLists.txt?r1=117998
> 4&r2=1179983&pathrev=1179984
So I figured the problem out, thanks to Andreas Pakulat: The problem is that
the paths to the headers and libraries are hardcoded (using the totally evil
NO_DEFAULT_PATH), and both incorrect on Fedora!
> find_path(OKULAR_INCLUDE_DIR okular/core/document.h
> HINTS ${_okularBaseDir}/include
> NO_DEFAULT_PATH)
This is wrong on Fedora. Should be: ${_okularBaseDir}/include/kde4
> find_library(OKULAR_CORE_LIBRARY okularcore
> HINTS ${_okularBaseDir}/lib
> NO_DEFAULT_PATH)
This is wrong on 64-bit Fedora. Should be: ${_okularBaseDir}/lib${LIB_SUFFIX}
Hardcoded paths + NO_DEFAULT_PATH are NOT a portable way to find things. KDE
allows overriding the install locations for things. You cannot rely on
everything being installed to the upstream default path.
Kevin Kofler
More information about the release-team
mailing list