Cannot find Magick++ header files
Since you are under Linux, I would think you can install the imagemagick package that comes with your installation. It's available on all flavors of Linux I know of.
Under Debian/Ubuntu it would be something like this:
sudo apt-get install libmagick++-dev
Otherwise, I personally would use cmake
to do all the setup. It's a bit of a learning curve at first, but then it automates those things for you.
It seems to me that if your command line is:
g++ main.cpp
Then you are missing a couple of -I
options. Installing the package may not require you to use the -I
option (since I use cmake
and don't really pay attention to those things... it just works for me.)
So to solve your problem, you probably need something like this:
g++ -I/home/simeon/ImageMagick-6.8.9-0/Magick++/lib main.cpp
Also, if you have a single .cpp
file, you may want to use a -o myprog
command line option.
For the compile and link steps to work as expected, you may want to use the pkgconfig definitions of Magick
# compilepkg-config --cflags /usr/lib/x86_64-linux-gnu/pkgconfig/ImageMagick++.pc# linkpkg-config --libs /usr/lib/x86_64-linux-gnu/pkgconfig/ImageMagick++.pc
These commands are actually what cmake
would try to use to determine the compile time and link time additional flags.
ImageMagick ships with a configuration utility that should give you the correct path. For Magick++, it's simply Magick++-config
(see section Usage in Magick++ docs.)
IM_CXXFLAGS=$(Magick++-config --cxxflags)IM_LDFLAGS=$(Magick++-config --ldflags)g++ $IM_CXXFLAGS $IM_LDFLAGS main.cpp
You will need to use the system's include statement (<>
), and keep it simple by including the parent header.
#include <Magick++.h>
If you just need it for single file, here is the proper build command for a Magick++ module:
g++ `Magick++-config --cxxflags --cppflags` -O2 -Wall -o yourProgramName yourFile.cpp `Magick++-config --ldflags --libs`
If it does not work you may need to install libmagick++-dev
first:
sudo apt-get install libmagick++-dev
And install imageMagick from Unix Source: