Page 1 of 1
How to include IM to C++ project?
Posted: 2014-07-04T06:06:04-07:00
by VanGog
Can you explain me what I must do when I want to use IM as library in C++ project? I am working with Visual Studio C++ Express 2010 and I would like to open images with IM. I expect I should include some directories and files or libraries which come with IM source. But I don't want to build IM executable, I want just to include only those libraries which are needed to open images (jpg, png, tiff, bmp).
The install page
http://www.imagemagick.org/Magick++/Install.html
contains instructions how to compile it but I want to include it to my own program.
Probably I could use this class
http://www.imagemagick.org/Magick++/Image.html
I need help which directories to include. When I try the first code on the page
I got error
fatal error C1021: invalid preprocessor command 'warning' in magick-config.h
Code: Select all
# warning "you should set MAGICKCORE_QUANTUM_DEPTH to sensible default set it to configure time default"
Even that I added the directory C:\ImageMagick-windows\ImageMagick-6.8.6\
and C:\ImageMagick-windows\ImageMagick-6.8.6\Magick++\lib
to include directories.
Re: How to include IM to C++ project?
Posted: 2014-07-04T14:55:12-07:00
by VanGog
I have fixed first problem (I added the recommended command line options to compiler
viewtopic.php?f=23&t=22528), but here are new problems:
Code: Select all
c:\imagemagick-windows\imagemagick-6.8.6\magick\magick-type.h(87): error C2146: syntax error : missing ';' before identifier 'SignedQuantum'
c:\imagemagick-windows\imagemagick-6.8.6\magick\magick-type.h(87): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\imagemagick-windows\imagemagick-6.8.6\magick\magick-type.h(87): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(157): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(157): error C2065: '__printf__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(157): error C3861: '__format__': identifier not found
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(157): error C2072: 'MagickCore::ThrowMagickException' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(160): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(160): error C2065: '__printf__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(160): error C3861: '__format__': identifier not found
c:\imagemagick-windows\imagemagick-6.8.6\magick\exception.h(160): error C2072: 'MagickCore::ThrowMagickExceptionList' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(68): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(68): error C2065: '__printf__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(68): error C3861: '__format__': identifier not found
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(68): error C2072: 'MagickCore::FormatLocaleFile' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(70): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(70): error C2065: '__printf__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(70): error C3861: '__format__': identifier not found
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(70): error C2072: 'MagickCore::FormatLocaleFileList' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(72): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(72): error C2065: '__printf__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(72): error C3861: '__format__': identifier not found
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(72): error C2072: 'MagickCore::FormatLocaleString' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(74): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(74): error C2065: '__printf__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(74): error C3861: '__format__': identifier not found
c:\imagemagick-windows\imagemagick-6.8.6\magick\locale_.h(74): error C2072: 'MagickCore::FormatLocaleStringList' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(77): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(77): error C2065: '__nonnull__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(77): error C2072: 'MagickCore::ConcatenateMagickString' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(79): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(79): error C2065: '__nonnull__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(79): error C2072: 'MagickCore::CopyMagickString' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(101): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(101): error C2065: '__nonnull__' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\string_.h(101): error C2072: 'MagickCore::ConcatenateStringInfo' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(94): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(94): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(94): error C2072: 'MagickCore::CloseCacheView' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(95): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(95): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(95): error C2072: 'MagickCore::OpenCacheView' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(98): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(98): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(98): error C2072: 'MagickCore::AllocateString' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(100): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(100): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(100): error C2072: 'MagickCore::InterpretImageAttributes' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(101): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(101): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(101): error C2072: 'MagickCore::PostscriptGeometry' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(103): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(103): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(103): error C2072: 'MagickCore::TranslateText' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(107): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(107): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(107): error C2072: 'MagickCore::GetImageClippingPathAttribute' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(108): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(108): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(108): error C2072: 'MagickCore::GetNextImageAttribute' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(111): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(111): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(111): error C2072: 'MagickCore::AcquireCacheViewIndexes' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(112): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(112): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(112): error C2072: 'MagickCore::AcquireIndexes' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(115): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(115): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(115): error C2072: 'MagickCore::AcquirePixels' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(118): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(118): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(118): error C2072: 'MagickCore::AcquireCacheViewPixels' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(120): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(120): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(120): error C2072: 'MagickCore::AcquireImagePixels' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(126): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(126): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(126): error C2072: 'MagickCore::AllocateImage' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(129): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(129): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(129): error C2072: 'MagickCore::ExtractSubimageFromImage' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(131): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(131): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(131): error C2072: 'MagickCore::GetImageFromMagickRegistry' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(133): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(133): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(133): error C2072: 'MagickCore::GetImageList' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(134): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(134): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(134): error C2072: 'MagickCore::GetNextImage' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(135): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(135): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(135): error C2072: 'MagickCore::GetPreviousImage' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(136): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(136): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(136): error C2072: 'MagickCore::FlattenImages' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(141): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(141): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(141): error C2072: 'MagickCore::MosaicImages' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(142): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(142): error C2065: 'deprecated' : undeclared identifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(142): error C2072: 'MagickCore::PopImageList' : initialization of a function
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(144): error C3646: '__attribute__' : unknown override specifier
c:\imagemagick-windows\imagemagick-6.8.6\magick\deprecate.h(144): fatal error C1003: error count exceeds 100; stopping compilation
Generating Code...
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
what am I missing?
Re: How to include IM to C++ project?
Posted: 2014-07-04T16:05:22-07:00
by fmw42
Re: How to include IM to C++ project?
Posted: 2014-07-05T00:16:19-07:00
by VanGog
Useful information. Thanks. I have found that I need
Cygwin & GCC
Anybody has idea if I can use compiled version or do I need to compile?