1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="GENERATOR" content="OpenOffice.org 1.0 (Win32)">
<meta name="AUTHOR" content="Bob Friesenhahn">
<meta name="CREATED" content="20020805;17455123">
<meta name="CHANGEDBY" content="Bob Friesenhahn">
<meta name="CHANGED" content="20020805;17485600">
<meta name="DESCRIPTION" content="C++ API for ImageMagick">
<link rel=stylesheet type=text/css href=../../www/magick.css>
</head>
<body lang="en-US" text="#ffffff" link="#0000EE" vlink="#551A8B" bgcolor="#fbc713">
<h1 align="center">Installing Magick++</h1>
<h3>General</h3>
<p>In order to compile Magick++ you must have access to a standard C++ implementation. The author uses <a href="http://gcc.gnu.org/index.html">gcc 3.1 (GNU C++)</a> which is available under UNIX and under the <a href="http://www.cygwin.com/">Cygwin UNIX-emulation environment</a> for Windows. Standards compliant commercial C++ compilers should also work fine. Most modern C++ compilers for Microsoft Windows or the Mac should work (project files are provided for Microsoft Visual C++ 6.0).</p>
<p>It was decided that Magick++ will be around for the long-haul, so its API definition depends on valuable C++ features which should be common in all current and future C++ compilers. The compiler must support the following C++ standard features:</p>
<ul>
<li>
<p style="margin-bottom: 0cm">templates</p></li>
<li>
<p style="margin-bottom: 0cm">static constructors</p></li>
<li>
<p style="margin-bottom: 0cm">C++-style casts (e.g. static_cast)</p></li>
<li>
<p style="margin-bottom: 0cm">bool type</p></li>
<li>
<p style="margin-bottom: 0cm">string class (<tt><string></tt>)</p></li>
<li>
<p style="margin-bottom: 0cm">exceptions (<tt><exception></tt>)</p></li>
<li>
<p style="margin-bottom: 0cm">namespaces</p></li>
<li>
<p>Standard Template Library (STL) (e.g. <tt><list></tt>, <tt><vector></tt>)</p></li></ul>
<p style="margin-bottom: 0cm">The author has personally verified that Magick++ compiles and runs using the following compiler/platform combinations:</p>
<br>
<p align="center" style="margin-bottom: 0cm"><b>Tested Configurations</b></p>
<table width="100%" border="1" cellpadding="2" cellspacing="3">
<tr>
<td>
<p align="center"><b>Operating System</b></p></td>
<td>
<p align="center"><b>Architecture</b></p></td>
<td>
<p align="center"><b>Compiler</b></p></td></tr>
<tr>
<td>
<p><font size="2">SunOS 5.6, 5.7, 5.8 ("Solaris 2.6, 7, & 8)</font></p></td>
<td>
<p><font size="2">SPARC</font></p></td>
<td>
<p><font size="2">GCC 3.0.4</font></p></td></tr>
<tr>
<td>
<p><font size="2">SunOS 5.7 ("Solaris 7")</font></p></td>
<td>
<p><font size="2">SPARC</font></p></td>
<td>
<p><font size="2">Sun Workshop 5.0 C++</font></p></td></tr>
<tr>
<td>
<p><font size="2">SunOS 5.8 ("Solaris 8")</font></p></td>
<td>
<p><font size="2">SPARC</font></p></td>
<td>
<p><font size="2">Sun WorkShop 6 update 2 C++ 5.3</font></p></td></tr>
<tr>
<td>
<p><font size="2">FreeBSD 4.0</font></p></td>
<td>
<p><font size="2">Intel Pentium II</font></p></td>
<td>
<p><font size="2">GCC 2.95</font></p></td></tr>
<tr>
<td>
<p><font size="2">Windows NT 4.0 SP6a</font></p></td>
<td>
<p><font size="2">Intel Pentium II</font></p></td>
<td>
<p><font size="2">Visual C++ 6.0 Standard Edition</font></p></td></tr>
<tr>
<td>
<p><font size="2">Windows XP</font></p></td>
<td>
<p><font size="2">Intel Pentium IV</font></p></td>
<td>
<p><font size="2">Visual C++ 6.0 Standard Edition Service Pack 5</font></p></td></tr>
<tr>
<td>
<p><font size="2">Windows '98 + <a href="http://www.cygwin.com/">Cygwin</a> 1.3.10</font></p></td>
<td>
<p><font size="2">Intel Pentium III</font></p></td>
<td>
<p><font size="2">GCC 2.95.3-5</font></p></td></tr>
<tr>
<td>
<p><font size="2">Windows NT 4.0 SP6a</font></p></td>
<td>
<p><font size="2">Intel Pentium II</font></p></td>
<td>
<p><font size="2">GCC 2.95.3-5</font></p></td></tr>
<tr>
<td>
<p><font size="2">Windows XP + <a href="http://www.cygwin.com/">Cygwin</a> 1.3.10</font></p></td>
<td>
<p><font size="2">Intel Pentium IV</font></p></td>
<td>
<p><font size="2">GCC 2.95.3-5</font></p></td></tr></table>
<p style="margin-bottom: 0cm">Users of Magick++ have reported that the following configurations work with Magick++:</p>
<br>
<p align="center" style="margin-bottom: 0cm"><b>Other Known Working Configurations</b></p>
<table width="100%" border="1" cellpadding="2" cellspacing="2">
<tr>
<td>
<p align="center"><b>Operating System</b></p></td>
<td>
<p align="center"><b>Architecture</b></p></td>
<td>
<p align="center"><b>Compiler</b></p></td>
<td>
<p><b>Reported By</b></p></td></tr>
<tr valign="top">
<td>
<p><font size="2">Red Hat Linux 6.0</font></p></td>
<td>
<p><font size="2">i386 & alpha</font></p></td>
<td>
<p><font size="2">EGCS 1.1.2</font></p></td>
<td>
<p><font size="2">Dr. Alexander Zimmermann <Alexander.Zimmermann@fmi.uni-passau.de></font></p></td></tr>
<tr valign="top">
<td>
<p><font size="2">Red Hat Linux 7.0</font></p></td>
<td>
<p><font size="2">i386</font></p></td>
<td>
<p><font size="2">GCC 2.95.2</font></p></td>
<td>
<p><font size="2">Dr. Alexander Zimmermann <Alexander.Zimmermann@fmi.uni-passau.de></font></p></td></tr>
<tr valign="top">
<td>
<p><font size="2">Red Hat Linux 7.0</font></p></td>
<td>
<p><font size="2">i386</font></p></td>
<td>
<p><font size="2">GCC "2.96" snapshot</font></p></td>
<td>
<p><font size="2">???</font></p></td></tr>
<tr>
<td>
<p><font size="2">Red Hat Linux 7.X</font></p></td>
<td>
<p><font size="2">i386 & alpha</font></p></td>
<td>
<p><font size="2">GCC 3.0</font></p></td>
<td>
<p><font size="2">Dr. Alexander Zimmermann <Alexander.Zimmermann@fmi.uni-passau.de></font></p></td></tr>
<tr valign="top">
<td>
<p><font size="2">SGI IRIX 6.2, 6.5</font></p></td>
<td>
<p><font size="2">MIPS</font></p></td>
<td>
<p><font size="2">IRIX C++ 7.3.1.2m</font></p></td>
<td>
<p><font size="2">Albert Chin-A-Young <china@thewrittenword.com></font></p></td></tr>
<tr>
<td>
<p><font size="2">SunOS 5.5.1</font></p></td>
<td>
<p><font size="2">SPARC</font></p></td>
<td>
<p><font size="2">Sun WorkShop CC 5.0</font></p></td>
<td>
<p><font size="2">Albert Chin-A-Young <china@thewrittenword.com></font></p></td></tr>
<tr>
<td>
<p><font size="2">SunOS 5.6, 5.7, 5.8</font></p></td>
<td>
<p><font size="2">SPARC</font></p></td>
<td>
<p><font size="2">Sun Forte CC 5.3</font></p></td>
<td>
<p><font size="2">Albert Chin-A-Young <china@thewrittenword.com></font></p></td></tr>
<tr valign="top">
<td>
<p><font size="2">HP-UX 11.00</font></p></td>
<td>
<p><font size="2">PA-RISC</font></p></td>
<td>
<p><font size="2">HP-UX aCC A.03.30</font></p></td>
<td>
<p><font size="2">Albert Chin-A-Young <china@thewrittenword.com></font></p></td></tr>
<tr valign="top">
<td>
<p><font size="2">Mac OS 9</font></p></td>
<td>
<p><font size="2">PowerPC</font></p></td>
<td>
<p><font size="2">CodeWarrior Professional Release 6</font></p></td>
<td>
<p><font size="2">Leonard Rosenthol <leonardr@digapp.com></font></p></td></tr>
<tr>
<td>
<p><font size="2">Mac OS X 10.1 "Darwin"</font></p></td>
<td>
<p><font size="2">PowerPC</font></p></td>
<td>
<p><font size="2">GCC 2.95.2 (apple gcc -926)</font></p></td>
<td>
<p><font size="2">John Cristy</font></p></td></tr></table>
<p>Please let me know if you have successfully built and executed Magick++ using a different configuration so that I can add to the table of verified configurations.</p>
<hr>
<h3 align="center">Unix/Linux</h3>
<h4>Building From Source</h4>
<p>Magick++ is now built using the ImageMagick configure script and Makefiles. Please follow the installation instructions provided by its README.txt file. The following instructions pertain to the Magick++ specific configuration and build options.</p>
<p>To install ImageMagick plus Magick++ under Unix, installation should be similar to</p>
<p><tt>./configure [ --prefix=/prefix ]</tt><br>
<tt>make</tt><br>
<tt>make install</tt></p>
<p>The library is currently named similar to 'libMagick++.a' (and/or libMagick++.so.5.0.39) and is installed under prefix/lib while the headers are installed with Magick++.h being installed in prefix/include and the remaining headers in prefix/include/Magick++.</p>
<p>To influence the options the configure script chooses, you may specify 'make' option variables when running the configure script. For example, the command</p>
<blockquote><tt>./configure CXX=CC CXXFLAGS=-O2 LIBS=-lposix</tt></blockquote>
<p style="margin-bottom: 0cm"><br>
specifies additional options to the configure script. The following table shows the available options.</p>
<br>
<p align="center" style="margin-bottom: 0cm">Environment Variables That Effect Configure</p>
<table width="100%" border="1" cellpadding="2" cellspacing="3">
<col width="40*">
<col width="216*">
<tr>
<td width="16%">
<p align="center"><b>Make Option Variable</b></p></td>
<td width="84%">
<p align="center"><b>Description</b></p></td></tr>
<tr>
<td width="16%">
<p align="center">CXX</p></td>
<td width="84%">
<p>Name of C++ compiler (e.g. 'CC -Xa') to use compiler 'CC -Xa'</p></td></tr>
<tr>
<td width="16%">
<p align="center">CXXFLAGS</p></td>
<td width="84%">
<p>Compiler flags (e.g. '-g -O2') to compile with</p></td></tr>
<tr>
<td width="16%">
<p align="center">CPPFLAGS</p></td>
<td width="84%">
<p>Include paths (-I/somedir) to look for header files</p></td></tr>
<tr>
<td width="16%">
<p align="center">LDFLAGS</p></td>
<td width="84%">
<p>Library paths (-L/somedir) to look for libraries. Systems that support the notion of a library run-path may additionally require -R/somedir or '-rpath /somedir' in order to find shared libraries at run time.</p></td></tr>
<tr>
<td width="16%">
<p align="center">LIBS</p></td>
<td width="84%">
<p>Extra libraries (-lsomelib) required to link</p></td></tr></table>
<h4>Installing Linux RPMs</h4>
<p style="margin-bottom: 0cm"><a href="mailto:Alexander.Zimmermann@FMI.Uni-Passau.De">Dr. Alexander Zimmermann</a> maintains Linux RPMs of ImageMagick and Magick++. These may be downloaded from <a href="ftp://ftp.forwiss.uni-passau.de/pub/linux/local/ImageMagick/">ftp://ftp.forwiss.uni-passau.de/pub/linux/local/ImageMagick/</a>. This site is mirrored periodically to the <a href="ftp://ftp.imagemagick.org/pub/ImageMagick/linux/">ImageMagick linux directory</a> and from there to the many ImageMagick and Linux mirror sites. Please note that the default version of the C++ compiler delivered with the system may not be sufficient to support Magick++. Use of GCC 2.95 or later is strongly recommended under Linux.</p>
<hr>
<h3 align="center">Windows '9X, NT, 2000, ME, & XP</h3>
<h4>Visual C++</h4>
<p>Windows '95 through Windows XP are supported by the ImageMagick source package for NT available in the 'win2k' subdirectory of the ImageMagick ftp site (and mirrors). The ImageMagick source package for NT provides sources to ImageMagick, Magick++, add-on libraries (e.g. JPEG), and a ready-made Visual C++ 6.0 build environment. Please read the configuration and build instructions in README.txt (under the heading "Windows Win2K/95 VISUAL C++ 6.0 COMPILATION") in order to build Magick++.</p>
<h4>Cygwin & GCC</h4>
<p>It is possible to build both ImageMagick and Magick++ under the Cygwin Unix-emulation environment for Windows NT. Obtain and install Cgywin from <a href="http://www.cygwin.com/">http://www.cygwin.com/</a> . An X11R6 environment for Cygwin is available from <a href="http://www.cygwin.com/xfree/">http://www.cygwin.com/xfree/</a> .To build using Cygwin and GCC, follow the instructions for building under Unix.</p>
</body>
</html>
|