This is an automatically generated e-mail. To reply, visit: http://svn.reviewboard.kde.org/r/5375/ |
On September 17th, 2010, 6:52 p.m., Alexander Neundorf wrote:
/usr/local is part of the default search directories, so it should be found if installed there. I just tested this here locally and it works for me. If it is not found when installed in /usr/local/, then we have to check what is going wrong there. AlexOn September 19th, 2010, 5:08 p.m., Guy Maurel wrote:
mmmh! I found at http://www.kitware.com/news/home/browse/168: "FIND_LIBRARY and FIND_PATH now look in CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH environment variables in addition to and before the PATH environment variable. " It is what I need, but nothing about a default value for CMAKE_LIBRARY_PATH and CMAKE_INCLUDE_PATH Is it something the user *has* to do itself before running?On September 21st, 2010, 5:38 p.m., Guy Maurel wrote:
Thanks to Alex for the discussion and your questions/helps. The CMAKE_INCLUDE_PATH give the order to search for: *First* at /usr/local *then* at /usr This is done (I think) to give a priority to the packages one have self installed. At the FindLibAttica.cmake (and other more) there is some lines of code such: IF (NOT WIN32) # use pkg-config to get the directories and then use these values # in the FIND_PATH() and FIND_LIBRARY() calls FIND_PACKAGE(PkgConfig) PKG_CHECK_MODULES(PC_LIBATTICA QUIET libattica) SET(LIBATTICA_DEFINITIONS ${PC_ATTICA_CFLAGS_OTHER}) ENDIF (NOT WIN32) I am using ArchLinux and the pacman-command installs (implicitly) some packages I havn't take care. One of them was "attica", installed at /usr . The search order is changed. The cmake works correctly with FindLibAttica.cmake and told me: /usr/include . *NOW* I would like to ask: What is the reason/strategy of changing the search order in this way? *MY* problem is now solved. Thanks
I got the "problem" because I don't anderstand the message, generate bei ccmake: "* libattica (0.1.90 or higher)..." I propose to do the same way as FindPolkitQt-1.cmake to improve the message with a warning such as: "WARNING: LibAttica version 0.1.4 found at /usr/include is too old. Please install 0.1.90 or newer." this way: --- FindLibAttica.cmake (revision 1175580) +++ FindLibAttica.cmake (working copy) @@ -37,6 +37,7 @@ STRING(REGEX REPLACE "LIBATTICA_VERSION_STRING \"(.*)\"\n" "\\1" LIBATTICA_VERSION ${LIBATTICA_VERSION_MATCH}) IF(LIBATTICA_VERSION STRLESS "${LIBATTICA_MIN_VERSION}") SET(LIBATTICA_VERSION_OK FALSE) + MESSAGE("WARNING: LibAttica version ${LIBATTICA_VERSION} found at ${LIBATTICA_INCLUDE_DIR} is too old. Please install ${LIBATTICA_MIN_VERSION} or newer.") IF(LibAttica_FIND_REQUIRED) MESSAGE(FATAL_ERROR "LibAttica version ${LIBATTICA_VERSION} is too old. Please install ${LIBATTICA_MIN_VERSION} or newer.") ELSE(LibAttica_FIND_REQUIRED) So I could have quickly seen where the problem is coming from.
- Guy
On September 17th, 2010, 6:08 p.m., Guy Maurel wrote:
Review request for kdelibs.
By Guy Maurel.
Updated 2010-09-17 18:08:15 Description
Diffs
|