blob: aac565410d0e7f167ab5aa74938f8ad2dcdf22a6 [file] [log] [blame]
cristy3ed852e2009-09-05 21:47:34 +00001
2
3 Installing Magick++
4
5General
6
7In order to compile Magick++ you must have access to a standard C++
8implementation. The author uses gcc 3.1 (GNU C++) which is available under
9UNIX and under the Cygwin UNIX-emulation environment for Windows. Standards
10compliant commercial C++ compilers should also work fine. Most modern C++
11compilers for Microsoft Windows or the Mac should work (project files are
12provided for Microsoft Visual C++ 6.0).
13
14It was decided that Magick++ will be around for the long-haul, so its API
15definition depends on valuable C++ features which should be common in all
16current and future C++ compilers. The compiler must support the following
17C++ standard features:
18
19 * templates
20 * static constructors
21 * C++-style casts (e.g. static_cast)
22 * bool type
23 * string class (<string>)
24 * exceptions (<exception>)
25 * namespaces
26 * Standard Template Library (STL) (e.g. <list>, <vector>)
27
28The author has personally verified that Magick++ compiles and runs using the
29following compiler/platform combinations:
30
31 Tested Configurations
32
33 Operating System Architecture Compiler
34 SunOS 5.6, 5.7, 5.8
35 ("Solaris 2.6, 7, & 8) SPARC GCC 3.0.4
36 SunOS 5.7 ("Solaris 7") SPARC Sun Workshop 5.0 C++
37
38 SunOS 5.8 ("Solaris 8") SPARC Sun WorkShop 6 update 2 C++
39 5.3
40 FreeBSD 4.0 Intel Pentium II GCC 2.95
41
42 Windows NT 4.0 SP6a Intel Pentium II Visual C++ 6.0 Standard
43 Edition
44
45 Windows XP Intel Pentium IV Visual C++ 6.0 Standard
46 Edition Service Pack 5
47 Windows '98 + Cygwin 1.3.10 Intel Pentium III GCC 2.95.3-5
48 Windows NT 4.0 SP6a Intel Pentium II GCC 2.95.3-5
49 Windows XP + Cygwin 1.3.10 Intel Pentium IV GCC 2.95.3-5
50
51Users of Magick++ have reported that the following configurations work with
52Magick++:
53
54 Other Known Working Configurations
55
56 Operating
57 System Architecture Compiler Reported By
58 Red Hat i386 & alpha EGCS 1.1.2 Dr. Alexander Zimmermann
59 Linux 6.0 <Alexander.Zimmermann@fmi.uni-passau.de>
60 Red Hat i386 GCC 2.95.2 Dr. Alexander Zimmermann
61 Linux 7.0 <Alexander.Zimmermann@fmi.uni-passau.de>
62 Red Hat i386 GCC "2.96" ???
63 Linux 7.0 snapshot
64 Red Hat Dr. Alexander Zimmermann
65 Linux 7.Xi386 & alpha GCC 3.0 <Alexander.Zimmermann@fmi.uni-passau.de>
66 SGI IRIX MIPS IRIX C++ Albert Chin-A-Young
67 6.2, 6.5 7.3.1.2m <china@thewrittenword.com>
68 SunOS Sun WorkShop Albert Chin-A-Young
69 5.5.1 SPARC CC 5.0 <china@thewrittenword.com>
70 SunOS
71 5.6, 5.7,SPARC Sun Forte CC Albert Chin-A-Young
72 5.8 5.3 <china@thewrittenword.com>
73 HP-UX PA-RISC HP-UX aCC Albert Chin-A-Young
74 11.00 A.03.30 <china@thewrittenword.com>
75 Mac OS 9 PowerPC CodeWarrior Leonard Rosenthol <leonardr@digapp.com>
76 Professional
77 Release 6
78 Mac OS X GCC 2.95.2
cristyeac380d2013-12-01 14:52:56 +000079 10.1 PowerPC (apple gcc Cristy
cristy3ed852e2009-09-05 21:47:34 +000080 "Darwin" -926)
81
82Please let me know if you have successfully built and executed Magick++
83using a different configuration so that I can add to the table of verified
84configurations.
85
86 ------------------------------------------------------------------------
87
88 Unix/Linux
89
90Building From Source
91
92Magick++ is now built using the ImageMagick configure script and Makefiles.
93Please follow the installation instructions provided by its README.txt file.
94The following instructions pertain to the Magick++ specific configuration
95and build options.
96
97To install ImageMagick plus Magick++ under Unix, installation should be
98similar to
99
100./configure [ --prefix=/prefix ]
101make
102make install
103
104The library is currently named similar to 'libMagick++.a' (and/or
105libMagick++.so.5.0.39) and is installed under prefix/lib while the headers
106are installed with Magick++.h being installed in prefix/include and the
107remaining headers in prefix/include/Magick++.
108
109To influence the options the configure script chooses, you may specify
110'make' option variables when running the configure script. For example, the
111command
112
113
114 ./configure CXX=CC CXXFLAGS=-O2 LIBS=-lposix
115
116specifies additional options to the configure script. The following table
117shows the available options.
118
119 Environment Variables That Effect Configure
120
121 Make Option
122 Variable Description
123
124 CXX Name of C++ compiler (e.g. 'CC -Xa') to use
125 compiler 'CC -Xa'
126 CXXFLAGS Compiler flags (e.g. '-g -O2') to compile with
127
128 CPPFLAGS Include paths (-I/somedir) to look for header
129 files
130 Library paths (-L/somedir) to look for
131 libraries. Systems that support the notion of a
132 LDFLAGS library run-path may additionally require
133 -R/somedir or '-rpath /somedir' in order to
134 find shared libraries at run time.
135 LIBS Extra libraries (-lsomelib) required to link
136
137Installing Linux RPMs
138
cristy6bcf48e2011-02-15 19:09:04 +0000139Please note that the default version of the C++ compiler delivered with the
140system may not be sufficient to support Magick++. Use of GCC 2.95 or later is
141strongly recommended under Linux.
cristy3ed852e2009-09-05 21:47:34 +0000142 ------------------------------------------------------------------------
143
144 Windows '9X, NT, 2000, ME, & XP
145
146Visual C++
147
148Windows '95 through Windows XP are supported by the ImageMagick source
149package for NT available in the 'win2k' subdirectory of the ImageMagick ftp
150site (and mirrors). The ImageMagick source package for NT provides sources
151to ImageMagick, Magick++, add-on libraries (e.g. JPEG), and a ready-made
152Visual C++ 6.0 build environment. Please read the configuration and build
153instructions in README.txt (under the heading "Windows Win2K/95 VISUAL C++
1546.0 COMPILATION") in order to build Magick++.
155
156Cygwin & GCC
157
158It is possible to build both ImageMagick and Magick++ under the Cygwin
159Unix-emulation environment for Windows NT. Obtain and install Cgywin from
160http://www.cygwin.com/ . An X11R6 environment for Cygwin is available
161from http://www.cygwin.com/xfree/ .To build using Cygwin and GCC, follow
162the instructions for building under Unix. ImageMagick and Magick++ do not
163yet include support for building Windows DLLs under Cygwin so do not enable
164dynamic libraries when building ImageMagick.