[CMake] cmake error when trying to compile KMyMoney 3.97.1

Ryan Pavlik rpavlik at iastate.edu
Sun Apr 4 14:50:08 EDT 2010


I'm pretty sure that Gettext is included with Mac OS X - you might look into
using the "mac homebrew" packages which do a much better job than MacPorts
of not duplicating system packages. I'm pretty sure that all the packages
that are listed here as missing are available with brew.  In any case, this
is a question better suited to the KMyMoney mailing list.

http://mxcl.github.com/homebrew/

Good luck!

Ryan

On Sun, Apr 4, 2010 at 3:53 AM, Pierre Maurier <pierre.maurier at gadz.org>wrote:

> Hi,
>
> I'm new in this mailing list and new in cmake compiling in general,
> I have a cmake error when trying to compile KMyMoney 3.97.1 on OSX.
> Here is the output :
>
> ===================================================================
> $ cmake -D CMAKE_BUILD_TYPE='Released' ..
> -- The C compiler identification is GNU
> -- The CXX compiler identification is GNU
> -- Checking whether C compiler has -isysroot
> -- Checking whether C compiler has -isysroot - yes
> -- Checking whether C compiler supports OSX deployment target flag
> -- Checking whether C compiler supports OSX deployment target flag - yes
> -- Check for working C compiler: /usr/bin/gcc
> -- Check for working C compiler: /usr/bin/gcc -- works
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Checking whether CXX compiler has -isysroot
> -- Checking whether CXX compiler has -isysroot - yes
> -- Checking whether CXX compiler supports OSX deployment target flag
> -- Checking whether CXX compiler supports OSX deployment target flag - yes
> -- Check for working CXX compiler: /usr/bin/c++
> -- Check for working CXX compiler: /usr/bin/c++ -- works
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Looking for Q_WS_X11
> -- Looking for Q_WS_X11 - not found.
> -- Looking for Q_WS_WIN
> -- Looking for Q_WS_WIN - not found.
> -- Looking for Q_WS_QWS
> -- Looking for Q_WS_QWS - not found.
> -- Looking for Q_WS_MAC
> -- Looking for Q_WS_MAC - found
> -- Looking for QT_MAC_USE_COCOA
> -- Looking for QT_MAC_USE_COCOA - found
> -- Found Qt-Version 4.6.2 (using /opt/local/bin/qmake-mac)
> -- Looking for include files CMAKE_HAVE_PTHREAD_H
> -- Looking for include files CMAKE_HAVE_PTHREAD_H - found
> -- Looking for pthread_create in pthreads
> -- Looking for pthread_create in pthreads - not found
> -- Looking for pthread_create in pthread
> -- Looking for pthread_create in pthread - found
> -- Found Threads: TRUE
> -- Found OpenSSL: /usr/lib/libssl.dylib
> -- Found Automoc4: /opt/local/bin/automoc4
> -- Found Perl: /opt/local/bin/perl
> -- Phonon Version: 4.3.1
> -- Found Phonon: /opt/local/libexec/qt4-mac/lib/phonon.framework
> -- Found Phonon Includes:
>
> /opt/local/libexec/qt4-mac/lib/phonon.framework/KDE;/opt/local/libexec/qt4-mac/lib/phonon.framework
> -- Performing Test _OFFT_IS_64BIT
> -- Performing Test _OFFT_IS_64BIT - Success
> -- Performing Test HAVE_FPIE_SUPPORT
> -- Performing Test HAVE_FPIE_SUPPORT - Success
> -- Performing Test __KDE_HAVE_W_OVERLOADED_VIRTUAL
> -- Performing Test __KDE_HAVE_W_OVERLOADED_VIRTUAL - Success
> -- Performing Test __KDE_HAVE_GCC_VISIBILITY
> -- Performing Test __KDE_HAVE_GCC_VISIBILITY - Success
> -- Found KDE 4.4 include dir: /opt/local/include
> -- Found KDE 4.4 library dir: /opt/local/lib
> -- Found the KDE4 kconfig_compiler preprocessor:
> /opt/local/bin/kconfig_compiler
> -- Found automoc4: /opt/local/bin/automoc4
> -- Boost version: 1.42.0
> -- Found the following Boost libraries:
> --   graph
> -- Found gpgme-config at /opt/local/bin/gpgme-config
> -- Found gpgme v1.2.0, checking for flavours...
> --  Found flavour 'vanilla', checking whether it's usable...yes
> --  Found flavour 'pthread', checking whether it's usable...yes
> --  Found flavour 'pth', checking whether it's usable...yes
> -- Usable gpgme flavours found:  vanilla pthread pth
> -- Found QGpgme: /opt/local/lib/libqgpgme.dylib
> -- Found KdepimLibs: /opt/local/lib/cmake/KdepimLibs/KdepimLibsConfig.cmake
> -- Found shared-mime-info version: 0.71
> -- Found JPEG: /opt/local/lib/libjpeg.dylib
> -- Found ZLIB: /usr/lib/libz.dylib
> -- Found PNG: /opt/local/lib/libpng.dylib
> -- Found Doxygen: /opt/local/bin/doxygen
> -- checking for modules 'libxml-2.0;libxml++-2.6;glib-2.0;glibmm-2.4'
> --   package 'libxml++-2.6' not found
> --   package 'glibmm-2.4' not found
> -- Looking for atoll
> -- Looking for atoll - found
> -- Looking for vsnprintf
> -- Looking for vsnprintf - found
> -- Looking for strtoll
> -- Looking for strtoll - found
> -- Looking for round
> -- Looking for round - found
> -- Looking for res_init
> -- Looking for res_init - not found.
> -- Performing Test HAVE_RES_INIT_PROTO
> -- Performing Test HAVE_RES_INIT_PROTO - Failed
> -- Looking for crypt
> -- Looking for crypt - not found
> -- Looking for stdint.h
> -- Looking for stdint.h - found
> -- Looking for dlfcn.h
> -- Looking for dlfcn.h - found
> -- Looking for inttypes.h
> -- Looking for inttypes.h - found
> -- Looking for memory.h
> -- Looking for memory.h - found
> -- Looking for stdlib.h
> -- Looking for stdlib.h - found
> -- Looking for strings.h
> -- Looking for strings.h - found
> -- Looking for string.h
> -- Looking for string.h - found
> -- Looking for sys/bitypes.h
> -- Looking for sys/bitypes.h - not found
> -- Looking for sys/stat.h
> -- Looking for sys/stat.h - found
> -- Looking for sys/types.h
> -- Looking for sys/types.h - found
> -- Looking for unistd.h
> -- Looking for unistd.h - found
> -- Looking for stddef.h
> -- Looking for stddef.h - found
> -- Check size of char*
> -- Check size of char* - failed
> -- Check size of int
> -- Check size of int - failed
> -- Check size of long
> -- Check size of long - failed
> -- Check size of short
> -- Check size of short - failed
> -- Check size of size_t
> -- Check size of size_t - failed
> -- Check size of unsigned long
> -- Check size of unsigned long - failed
> -- checking for module 'libofx'
> --   found libofx, version 0.9.1
> -- Found LibOfx: /opt/local/lib/libofx.dylib
> -- Could not find Gwenhywfar headers and the KBanking plugin will not
> be compiled. If you do have the Gwenhywfar development package
> installed use the GWENHYWFAR_BASE cmake variable to point to the
> location where Gwenhywfar is installed
> -- AqBanking headers not found. If you do have
> --   the AqBanking development package installed use
> --   the AQBANKING_BASE cmake variable to point to
> --   the location where AqBanking is installed.
> -- Found Libical version 0.43
> -- Found LIBICAL:
> /opt/local/lib/libical.dylib;/opt/local/lib/libicalss.dylib
> -- Looking for RPMTools... - rpmbuild NOT FOUND
>
> -------- KMyMoney 3.97.1 --------
>
> Configure results (user options):
> --------------------------------------------
> OFX plugin:                              yes
>
> KBanking plugin:                         no
>
> iCalendar export plugin:                 yes
> --------------------------------------------
>
>
> Configure results (developer options):
> --------------------------------------------
> Qt-Designer library support:             no
>
> Developer documentation generation:      no
>
> CPPUNIT support:                         yes
>        build tests:                     no
>
> Doxygen support:                         yes
>
> Build type: Released
> --------------------------------------------
>
> Good - your configure finished.
> Now type 'make' to build KMyMoney. For more help, consult README.cmake
>
> -- Looking for dgettext
> -- Looking for dgettext - not found
> -- Looking for dgettext in /opt/local/lib/libintl.dylib
> -- Looking for dgettext in /opt/local/lib/libintl.dylib - not found
> CMake Error at /opt/local/share/apps/cmake/modules/FindGettext.cmake:61
> (message):
>  Could NOT find Gettext
> Call Stack (most recent call first):
>  CMakeLists.txt:481 (find_package)
>
>
> -- Configuring incomplete, errors occurred!
> ===================================================================
>
>
> I understand that gettext is not found but I have installed it with
> MacPorts and here it is :
> ===================================================================
> $ which gettext
> /opt/local/bin/gettext
> ===================================================================
>
> I tried to look into
> /opt/local/share/apps/cmake/modules/FindGettext.cmake to find which
> Variable is causing an issue but... it is beyond my skills !
>
> ===================================================================
> $ cat /opt/local/share/apps/cmake/modules/FindGettext.cmake
> # Try to find Gettext functionality
> # Once done this will define
> #
> #  GETTEXT_FOUND - system has Gettext
> #  GETTEXT_INCLUDE_DIR - Gettext include directory
> #  GETTEXT_LIBRARIES - Libraries needed to use Gettext
>
> # TODO: This will enable translations only if Gettext functionality is
> # present in libc. Must have more robust system for release, where Gettext
> # functionality can also reside in standalone Gettext library, or the one
> # embedded within kdelibs (cf. gettext.m4 from Gettext source).
> #
> # Copyright (c) 2006, Chusslove Illich, <caslav.ilic at gmx.net>
> #
> # Redistribution and use is allowed according to the terms of the BSD
> license.
> # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
>
>
> if (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT)
>
>  # in cache already
>  set(GETTEXT_FOUND TRUE)
>
> else (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT)
>
>  include(CheckLibraryExists)
>  include(CheckFunctionExists)
>
>  find_path(GETTEXT_INCLUDE_DIR libintl.h)
>  if(GETTEXT_INCLUDE_DIR)
>     set(HAVE_LIBINTL_H 1)
>  else(GETTEXT_INCLUDE_DIR)
>     set(HAVE_LIBINTL_H 0)
>  endif(GETTEXT_INCLUDE_DIR)
>
>  set(GETTEXT_LIBRARIES)
>
>  if (HAVE_LIBINTL_H)
>     check_function_exists(dgettext LIBC_HAS_DGETTEXT)
>     if (LIBC_HAS_DGETTEXT)
>        set(GETTEXT_SOURCE "built in libc")
>        set(GETTEXT_FOUND TRUE)
>     else (LIBC_HAS_DGETTEXT)
>        find_library(LIBINTL_LIBRARY NAMES intl libintl )
>
>        check_library_exists(${LIBINTL_LIBRARY} "dgettext" ""
> LIBINTL_HAS_DGETTEXT)
>        if (LIBINTL_HAS_DGETTEXT)
>           set(GETTEXT_SOURCE "in ${LIBINTL_LIBRARY}")
>           set(GETTEXT_LIBRARIES ${LIBINTL_LIBRARY})
>           set(GETTEXT_FOUND TRUE)
>        endif (LIBINTL_HAS_DGETTEXT)
>     endif (LIBC_HAS_DGETTEXT)
>  endif (HAVE_LIBINTL_H)
>
>  if (GETTEXT_FOUND)
>     if (NOT Gettext_FIND_QUIETLY)
>        message(STATUS "Found Gettext: ${GETTEXT_SOURCE}")
>     endif (NOT Gettext_FIND_QUIETLY)
>  else (GETTEXT_FOUND)
>     if (Gettext_FIND_REQUIRED)
>        message(FATAL_ERROR "Could NOT find Gettext")
>     endif (Gettext_FIND_REQUIRED)
>  endif (GETTEXT_FOUND)
>
>  mark_as_advanced(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES)
>
> endif (LIBC_HAS_DGETTEXT OR LIBINTL_HAS_DGETTEXT)
>
>
> # - Find GNU gettext tools
> # This module looks for the GNU gettext tools. This module defines the
> # following values:
> #  GETTEXT_MSGMERGE_EXECUTABLE: the full path to the msgmerge tool.
> #  GETTEXT_MSGFMT_EXECUTABLE: the full path to the msgfmt tool.
> #  GETTEXT_FOUND: True if gettext has been found.
> #
> # Additionally it provides the following macros:
> # GETTEXT_CREATE_TRANSLATIONS ( outputFile [ALL] file1 ... fileN )
> #    This will create a target "translations" which will convert the
> #    given input po files into the binary output mo file. If the
> #    ALL option is used, the translations will also be created when
> #    building the default target.
> # GETTEXT_PROCESS_POT( <potfile> [ALL] [INSTALL_DESTINATION <destdir>]
> <lang1> <lang2> ... )
> #     Process the given pot file to mo files.
> #     If INSTALL_DESTINATION is given then automatically install rules
> will be created,
> #     the language subdirectory will be taken into account (by default
> use share/locale/).
> #     If ALL is specified, the pot file is processed when building the
> all traget.
> #     It creates a custom target "potfile".
> #
> # GETTEXT_PROCESS_PO_FILES(<lang> [ALL] [INSTALL_DESTINATION <dir>]
> <po1> <po2> ...)
> #     Process the given po files to mo files for the given language.
> #     If INSTALL_DESTINATION is given then automatically install rules
> will be created,
> #     the language subdirectory will be taken into account (by default
> use share/locale/).
> #     If ALL is specified, the po files are processed when building
> the all traget.
> #     It creates a custom target "pofiles".
>
>
>
> FIND_PROGRAM(GETTEXT_MSGMERGE_EXECUTABLE msgmerge)
>
> FIND_PROGRAM(GETTEXT_MSGFMT_EXECUTABLE msgfmt)
>
> MACRO(GETTEXT_CREATE_TRANSLATIONS _potFile _firstPoFile)
>
>   SET(_gmoFiles)
>   GET_FILENAME_COMPONENT(_potBasename ${_potFile} NAME_WE)
>   GET_FILENAME_COMPONENT(_absPotFile ${_potFile} ABSOLUTE)
>
>   SET(_addToAll)
>   IF(${_firstPoFile} STREQUAL "ALL")
>      SET(_addToAll "ALL")
>      SET(_firstPoFile)
>   ENDIF(${_firstPoFile} STREQUAL "ALL")
>
>   FOREACH (_currentPoFile ${ARGN})
>      GET_FILENAME_COMPONENT(_absFile ${_currentPoFile} ABSOLUTE)
>      GET_FILENAME_COMPONENT(_abs_PATH ${_absFile} PATH)
>      GET_FILENAME_COMPONENT(_lang ${_absFile} NAME_WE)
>      SET(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo)
>
>      ADD_CUSTOM_COMMAND(
>         OUTPUT ${_gmoFile}
>         COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --update
> --backup=none -s ${_absFile} ${_absPotFile}
>         COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_absFile}
>         DEPENDS ${_absPotFile} ${_absFile}
>      )
>
>      INSTALL(FILES ${_gmoFile} DESTINATION
> share/locale/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo)
>      SET(_gmoFiles ${_gmoFiles} ${_gmoFile})
>
>   ENDFOREACH (_currentPoFile )
>
>   ADD_CUSTOM_TARGET(translations ${_addToAll} DEPENDS ${_gmoFiles})
>
> ENDMACRO(GETTEXT_CREATE_TRANSLATIONS )
>
> # GETTEXT_PROCESS_POT( <potfile> [ALL] [INSTALL_DESTINATION <destdir>]
> <lang1> <lang2> ... )
> MACRO(GETTEXT_PROCESS_POT_FILE _potFile)
>
>   SET(_gmoFiles)
>   SET(_args ${ARGN})
>   SET(_addToAll)
>   SET(_installDest)
>
>   IF(_args)
>      LIST(GET _args 0 _tmp)
>      IF("${_tmp}" STREQUAL "ALL")
>         SET(_addToAll ALL)
>         LIST(REMOVE_AT _args 0)
>      ENDIF("${_tmp}" STREQUAL "ALL")
>   ENDIF(_args)
>
>   IF(_args)
>      LIST(GET _args 0 _tmp)
>      IF("${_tmp}" STREQUAL "INSTALL_DESTINATION")
>         LIST(GET _args 1 _installDest )
>         LIST(REMOVE_AT _args 0 1)
>      ENDIF("${_tmp}" STREQUAL "INSTALL_DESTINATION")
>   ENDIF(_args)
>
>   GET_FILENAME_COMPONENT(_potBasename ${_potFile} NAME_WE)
>   GET_FILENAME_COMPONENT(_absPotFile ${_potFile} ABSOLUTE)
>
> #    message(STATUS "1 all ${_addToAll} dest ${_installDest} args:
> ${_args}")
>
>   FOREACH (_lang ${_args})
>      SET(_poFile  "${CMAKE_CURRENT_BINARY_DIR}/${_lang}.po")
>      SET(_gmoFile "${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo")
>
>      ADD_CUSTOM_COMMAND(
>         OUTPUT "${_poFile}"
>         COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --quiet --update
> --backup=none -s ${_poFile} ${_absPotFile}
>         DEPENDS ${_absPotFile}
>      )
>
>      ADD_CUSTOM_COMMAND(
>         OUTPUT "${_gmoFile}"
>         COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_poFile}
>         DEPENDS ${_absPotFile} ${_poFile}
>      )
>
>      IF(_installDest)
>         INSTALL(FILES ${_gmoFile} DESTINATION
> ${_installDest}/${_lang}/LC_MESSAGES RENAME ${_potBasename}.mo)
>      ENDIF(_installDest)
>      LIST(APPEND _gmoFiles ${_gmoFile})
>
>   ENDFOREACH (_lang )
>
>   ADD_CUSTOM_TARGET(potfile ${_addToAll} DEPENDS ${_gmoFiles})
>
> ENDMACRO(GETTEXT_PROCESS_POT_FILE)
>
>
> # GETTEXT_PROCESS_PO_FILES(<lang> [ALL] [INSTALL_DESTINATION <dir>]
> <po1> <po2> ...)
> MACRO(GETTEXT_PROCESS_PO_FILES _lang)
>   SET(_gmoFiles)
>   SET(_args ${ARGN})
>   SET(_addToAll)
>   SET(_installDest)
>
>   LIST(GET _args 0 _tmp)
>   IF("${_tmp}" STREQUAL "ALL")
>      SET(_addToAll ALL)
>      LIST(REMOVE_AT _args 0)
>   ENDIF("${_tmp}" STREQUAL "ALL")
>
>   LIST(GET _args 0 _tmp)
>   IF("${_tmp}" STREQUAL "INSTALL_DESTINATION")
>      LIST(GET _args 1 _installDest )
>      LIST(REMOVE_AT _args 0 1)
>   ENDIF("${_tmp}" STREQUAL "INSTALL_DESTINATION")
>
> #    message(STATUS "2 all ${_addToAll} dest ${_installDest} args:
> ${_args}")
>
>   FOREACH(_current_PO_FILE ${_args})
>      GET_FILENAME_COMPONENT(_basename ${_current_PO_FILE} NAME_WE)
>      SET(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo)
>      add_custom_command(OUTPUT ${_gmoFile}
>            COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile}
> ${_current_PO_FILE}
>            WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
>            DEPENDS ${_current_PO_FILE}
>         )
>
>      IF(_installDest)
>         INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${_basename}.gmo
> DESTINATION ${_installDest}/${_lang}/LC_MESSAGES/ RENAME
> ${_basename}.mo)
>      ENDIF(_installDest)
>      LIST(APPEND _gmoFiles ${_gmoFile})
>   ENDFOREACH(_current_PO_FILE)
>   ADD_CUSTOM_TARGET(pofiles ${_addToAll} DEPENDS ${_gmoFiles})
> ENDMACRO(GETTEXT_PROCESS_PO_FILES)
>
>
> #IF (GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE )
> #   SET(GETTEXT_FOUND TRUE)
> #ELSE (GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE )
> #   SET(GETTEXT_FOUND FALSE)
> #   IF (GetText_REQUIRED)
> #      MESSAGE(FATAL_ERROR "GetText not found")
> #   ENDIF (GetText_REQUIRED)
> #ENDIF (GETTEXT_MSGMERGE_EXECUTABLE AND GETTEXT_MSGFMT_EXECUTABLE )
> ===================================================================
>
> Do somebody knows what happened there ?
>
> If hope this message is not too long, I'm not used to use mailing
> lists so I do not know the habits.
>
> Thank you,
>
> Pierre M.
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>



-- 
Ryan Pavlik
HCI Graduate Student
Virtual Reality Applications Center
Iowa State University

rpavlik at iastate.edu
http://academic.cleardefinition.com
Internal VRAC/HCI Site: http://tinyurl.com/rpavlik
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20100404/66ee0173/attachment-0001.htm>


More information about the CMake mailing list