Closed GvMariani closed 8 months ago
I used this quick patch to fix build with ImageMagick 7: https://abf.rosalinux.ru/import/converseen/raw/rosa2016.1/converseen-0.9.5.2-imagemagick7.patch
But it's not good enough to be merged upstream. There should be support for both IM6 and IM7 via "#if ... < 7".
Hi,
Thank you for the bug report and for the help with the patch. It was very useful to me for speeding up the porting to IM7. I've almost finished to fix the code. Hoping to test and release the final code the sooner possible. :)
The macro for retrieving the version of the IM library is MagickLibVersion
defined in MagickCore/version.h. :)
Hi,
I've released a new version of the program and now is possible to build it using ImageMagick 7. Let me know if there are other problems when compiling Converseen with IM7.
Thanx, I updated Converseen package in ROSA Desktop 2016.1 repository to 0.9.6.
The only issue I still had was linkage. Fixed with:
-TARGET_LINK_LIBRARIES(${GUI} ${Qt5Network_LIBRARIES} ${Qt5Widgets_LIBRARIES} ${ImageMagick_LIBRARIES} ${ImageMagick_Magick++_LIBRARIES} ${ImageMagick_MagickCore_LIBRARIES})
+TARGET_LINK_LIBRARIES(${GUI} ${Qt5Network_LIBRARIES} ${Qt5Widgets_LIBRARIES} ${ImageMagick_LIBRARIES} ${ImageMagick_Magick++_LIBRARY} ${ImageMagick_MagickCore_LIBRARY})
From cmake 3.6.1 file FindImageMagick.cmake it seems that cmake sets _LIBRARY, not _LIBRARIES variable for IM components:
list(APPEND ImageMagick_REQUIRED_VARS ImageMagick_Magick++_LIBRARY)
list(APPEND ImageMagick_REQUIRED_VARS ImageMagick_MagickWand_LIBRARY)
list(APPEND ImageMagick_REQUIRED_VARS ImageMagick_MagickCore_LIBRARY)
They all should be included in ${ImageMagick_LIBRARIES} but for some reasons only Magick++ was (but that's cmake/IM issue, maybe already fixed in 3.7.1).
I tried to compile 0.9.6 release with imagemagick 7. qmake: src/main.cpp:26:22: fatal error: Magick++.h: No such file or directory
cmake 3.7.0 (and 3.7.2): -- Found ImageMagick: /usr/bin/convert (found version "7.0.2-4") -- Could NOT find ImageMagick (missing: ImageMagick_Magick++_LIBRARY) (found version "7.0.2-4") -- Could NOT find ImageMagick (missing: ImageMagick_MagickWand_LIBRARY) (found version "7.0.2-4") -- Could NOT find ImageMagick (missing: ImageMagick_MagickCore_LIBRARY) (found version "7.0.2-4") and: src/main.cpp:26:22: fatal error: Magick++.h: No such file or directory
Oops... the relased 0.9.6 tarball contains the 0.9.5.2: the v0.9.6 tag added for commit ec7e7eb, instead of 46cd088.
I downloaded the real 0.9.6 version from git. I cannot compile it with cmake (the error us same than https://github.com/Faster3ck/Converseen/issues/34#issuecomment-275549509), but after modifying the .pro file, I can compile it with qmake.
@rezso @Pulfer I think cmake, at the moment, have no support for ImageMagick 7.
I've taken a look to the current FindImageMagick.cmake module and, at line 105, I found the module is able only to recognize headers indluded in folders named ImageMagick
or ImageMagick-6
.
Trying to build converseen 0.9.5.2 for the upcoming Rosa Linux 2016.1 distro: gcc 5.3.1, Miagick++ 7.0.3 The build fails with a few errors about "FilterTypes" (see the full log attached) BuildFailed.txt:
error: 'FilterTypes' has not been declared error: 'FilterTypes' does not name a type error: template argument 1 is invalid