I compiled and ran 2.9 when it was in alpha/beta on my system with no problems from the Git repository. Since 2.9 came out I've been having this issue when I try to configure the latest version. It throws up a version error and stops configuration. This issue did not exist before 2.9 release, and I'm pretty sure I have GNU Scientific Library installed already. Here's the full log:- $ cmake -DCMAKE_INSTALL_PREFIX=$HOME/kde4/inst $HOME/kde4/src/calligra -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPRODUCTSET=KRITA -- Calligra version: 2.9.1 -- Release build: TRUE -- ------------------------------------------------------------------- -- Configured with product set "KRITA" -- ------------------------------------------------------------------- -- Found Qt-Version 4.8.6 (using /usr/bin/qmake-qt4) -- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so -- Adding /home/heminder/kde4/inst/share/apps/cmake/modules to CMAKE_MODULE_PATH -- Found KDE 4.8 include dir: /usr/include -- Found KDE 4.8 library dir: /usr/lib -- Found the KDE4 kconfig_compiler preprocessor: /usr/bin/kconfig_compiler -- Found automoc4: /usr/bin/automoc4 -- Found Qt-Version 4.8.6 (using /usr/bin/qmake-qt4) -- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so -- Found Qt-Version 4.8.6 (using /usr/bin/qmake-qt4) -- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so -- Boost version: 1.49.0 -- Found the following Boost libraries: -- system -- NOTE: Recommended SQLite version is 3.8.7 -- Found ICU header files in /usr/include -- Found ICU libraries: /usr/lib/x86_64-linux-gnu/libicuuc.so -- Found OPENEXR: /usr/lib/libImath.so;/usr/lib/libIlmImf.so;/usr/lib/libIex.so;/usr/lib/libHalf.so;/usr/lib/libIlmThread.so -- Found OpenGL: /usr/lib/x86_64-linux-gnu/libGLU.so;/usr/lib/x86_64-linux-gnu/libGL.so;/usr/lib/x86_64-linux-gnu/libSM.so;/usr/lib/x86_64-linux-gnu/libICE.so;/usr/lib/x86_64-linux-gnu/libSM.so;/usr/lib/x86_64-linux-gnu/libICE.so;/usr/lib/x86_64-linux-gnu/libSM.so;/usr/lib/x86_64-linux-gnu/libICE.so;/usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so;/usr/lib/x86_64-linux-gnu/libXft.so;/usr/lib/x86_64-linux-gnu/libXau.so;/usr/lib/x86_64-linux-gnu/libXdmcp.so -- Found Qt OpenGL support -- Found GNU Scientific Library 1.15: /usr/include/gsl /usr/lib/libgsl.so;/usr/lib/libgslcblas.so CMake Error at CMakeLists.txt:345 (if): if given arguments: "VERSION_LESS" "0.19.2" Unknown arguments specified -- Configuring incomplete, errors occurred! Reproducible: Always calligra/2.9 e30ef09c09957fe9b326bc47511c3961c4e8444a
It hasn't got anything to do with gsl, it's to do with marble, which is a kexi dependency. Line 345 is if(${MARBLE_VERSION} VERSION_LESS ${MARBLE_MIN_VERSION} ) If you remove the marble dev packages, you'll be able to run cmake without trouble, and I'll hand this bug over to the kexi guys in the meantime.
@Boud thanks for the redirect. To be strict, marble is used in the koreport reporting framework used by Plan and Kexi. Marble (but not in so strict version maybe?) is also used in plugins/semanticitems/location.
I've purged all packages with "marble" in their name, but still get the same error upon configuring. I thought Marble was a build dependency for Krita, since $ sudo apt-get build-dep krita returns the three marble packages libmarble-dev libmarblewidget13 marble-data
@heminder.ah@gmail.com 'plugins/semanticitems/location' plugin was dependent. Maybe this introduced the dependency. It does not matter, Calligra will get more modular in 3.x. I am investigating the bug, if you can, having CMakeCache.txt could be useful.
Created attachment 91644 [details] CmakeCache.txt Thanks for looking into it. I've attached a copy of CmakeCache.txt found in the build directory. Hope it's useful.
It helped! MARBLE_GLOBAL_HEADER isn't set (by us, not you). It could be useful if you share info what's your marble version is (from package's info for example) (I have to tell you that marble's components (not the app) is insufficiently versioned for our needs and until recent lacks one important header)
Marble versions from the package manager:- $ aptitude show marble Package: marble New: yes State: not installed Version: 4:4.8.4-3 Priority: optional Section: misc Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Architecture: amd64 Uncompressed Size: 1,207 k Depends: kde-runtime, libc6 (>= 2.2.5), libkdecore5 (>= 4:4.7), libkdeui5 (>= 4:4.7), libkio5 (>= 4:4.7), libknewstuff3-4 (>= 4:4.7), libkparts4 (>= 4:4.7), libmarblewidget13 (= 4:4.8.4-3), libplasma3 (>= 4:4.7), libqt4-network (>= 4:4.5.3), libqtcore4 (>= 4:4.8.0), libqtgui4 (>= 4:4.5.3), libstdc++6 (>= 4.1.1), marble-data (>= 4:4.8.4-3), marble-plugins (= 4:4.8.4-3) Suggests: libqt4-sql-sqlite, gosmore, monav-routing-daemon, routino Conflicts: marble Description: globe and map widget $ aptitude show libmarble-dev Package: libmarble-dev State: not installed Version: 4:4.8.4-3 Priority: optional Section: libdevel Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Architecture: amd64 Uncompressed Size: 949 k Depends: libc6 (>= 2.2.5), libmarblewidget13 (= 4:4.8.4-3), libqtcore4 (>= 4:4.5.3), libqtgui4 (>= 4:4.5.3), libstdc++6 (>= 4.1.1), libqt4-dev (>= 4:4.8.0) Conflicts: libmarble-dev Description: development files for the Marble globe widget library
@heminder.ah@gmail.com are you able to this the patch I publish in one minute?
Created attachment 91646 [details] move handling of minimum version check to FindCalligraMarble.cmake, make marble not found if minimum version constraint not met; cache variables detected for marble
Hi. I'm not sure what to do with the file to apply the patch. There are 609 CMakeLists.txt files within the /src directory. Do I replace one of them with your version? There isn't one present in the Marble folder.
Debian-based distributions have the most amazing set of dependencies for Krita... We really don't need marble for Krita!
@heminder Please just type these commands: cd calligra/ patch -p1 < {patchfilename}
OK. Krita configured, built, and installed successfully. However, upon launching a new error pops up in a gui window reading :- "The Calligra LittleCMS color management plugin is not installed. Krita will quit now." The configuring log listed as LittleCMS as being present and set to be installed :- -- checking for module 'lcms2' -- found lcms2, version 2.2 -- Found lcms version 2.02, /usr/lib/x86_64-linux-gnu/liblcms2.so For reference following lcms packages are installed on my system: liblcms1, liblcms2-2, liblcms2-dev, liblcms2-utils.
That version of lcms is way too old! You need at least 2.4. CMake should have warned you about that.
Ah. Was it get upgraded between the beta and the final release? This wasn't an issue when 2.9 was in pre-release. I didn't get any warnings from CMake relating to LCMS, and it just said the LittleCMS features will be included. Debian Wheezy only has libcms 2.2 in its main repository, and the backports repo has 2.2+git20110628-2.2+deb7u1
Git commit bdc9f5be404ae6911b17915d6107867751da441d by Jaroslaw Staniek. Committed on 25/03/2015 at 22:20. Pushed by staniek into branch 'calligra/2.9'. Fix cmake error when configuring Calligra - Marble related - Move handling of minimum version check to FindCalligraMarble.cmake - Make marble not found if 'minimum version' constraint isn't met - Cache variables detected for marble M +13 -19 CMakeLists.txt M +22 -17 cmake/modules/FindCalligraMarble.cmake http://commits.kde.org/calligra/bdc9f5be404ae6911b17915d6107867751da441d