Magick++ をコンパイルするには、標準的な C++ 実装環境が必要です。著者は gcc 3.4 (GNU C++) を使用していますが、これは UNIX 上、および Windows の Cygwin UNIX エミュレーション環境 で利用可能です。標準に準拠した市販の C++ コンパイラでも問題なく動作するはずです。Microsoft Windows や Mac の最新の C++ コンパイラのほとんどは動作します(Microsoft Visual C++ 8.0 用のプロジェクトファイルが提供されています)。
Magick++ は長期間にわたって使用されることを考慮して設計されているため、その API 定義は、現在および将来のすべての C++ コンパイラで一般的となるべき貴重な C++ 機能に依存しています。コンパイラは以下の C++ 標準機能をサポートする必要があります。
テンプレート
静的コンストラクタ
C++ スタイルのキャスト(例: static_cast)
bool 型
string クラス (<string>)
例外 (<exception>)
名前空間
標準テンプレートライブラリ (STL) (例:<list>, <vector>)
著者は、以下のコンパイラ/プラットフォームの組み合わせを使用して Magick++ がコンパイルおよび実行されることを個人的に確認しています。
テスト済みの構成
オペレーティングシステム |
アーキテクチャ |
コンパイラ |
SunOS 5.6、5.7、5.8("Solaris 2.6、7、& 8") |
SPARC |
GCC 3.0.4 |
SunOS 5.7("Solaris 7") |
SPARC |
Sun Workshop 5.0 C++ |
SunOS 5.8("Solaris 8") |
SPARC |
Sun WorkShop 6 update 2 C++ 5.3 |
FreeBSD 4.0 |
Intel Pentium II |
GCC 2.95 |
Windows NT 4.0 SP6a |
Intel Pentium II |
Visual C++ 8.0 Standard Edition |
Windows XP |
Intel Pentium IV |
Visual C++ 8.0 Standard Edition Service Pack 5 |
Windows '98 + Cygwin 1.3.10 |
Intel Pentium III |
GCC 2.95.3-5 |
Windows NT 4.0 SP6a |
Intel Pentium II |
GCC 2.95.3-5 |
Windows XP + Cygwin 1.3.10 |
Intel Pentium IV |
GCC 2.95.3-5 |
Magick++ のユーザーから、以下の構成でも動作すると報告されています。
その他の既知の動作確認済み構成
オペレーティングシステム |
アーキテクチャ |
コンパイラ |
報告者 |
Red Hat Linux 8.0 |
i386 & alpha |
EGCS 1.1.2 |
Dr. Alexander Zimmermann <Alexander.Zimmermann@fmi.uni-passau.de> |
Red Hat Linux 7.0 |
i386 |
GCC 2.95.2 |
Dr. Alexander Zimmermann <Alexander.Zimmermann@fmi.uni-passau.de> |
Red Hat Linux 7.0 |
i386 |
GCC "2.96" スナップショット |
??? |
Red Hat Linux 7.X |
i386 & alpha |
GCC 3.0 |
Dr. Alexander Zimmermann <Alexander.Zimmermann@fmi.uni-passau.de> |
SGI IRIX 6.2、6.5 |
MIPS |
IRIX C++ 7.3.1.2m |
Albert Chin-A-Young <china@thewrittenword.com> |
SunOS 5.5.1 |
SPARC |
Sun WorkShop CC 5.0 |
Albert Chin-A-Young <china@thewrittenword.com> |
SunOS 5.6、5.7、5.8 |
SPARC |
Sun Forte CC 5.3 |
Albert Chin-A-Young <china@thewrittenword.com> |
HP-UX 11.00 |
PA-RISC |
HP-UX aCC A.03.30 |
Albert Chin-A-Young <china@thewrittenword.com> |
Mac OS 9 |
PowerPC |
CodeWarrior Professional Release 6 |
Leonard Rosenthol <leonardr@digapp.com> |
Mac OS X 10.1 "Darwin" |
PowerPC |
GCC 2.95.2 (apple gcc -926) |
Cristy |
異なる構成で Magick++ のビルドと実行に成功した場合は、お知らせください。検証済み構成の表に追加いたします。
Magick++ は現在、ImageMagick の configure スクリプトと Makefile を使用してビルドされています。README.txt ファイルに記載されているインストール手順に従ってください。以下の手順は、Magick++ 固有の構成とビルドオプションに関するものです。
Unix で ImageMagick と Magick++ をインストールするには、次のようにします。
./configure [ --prefix=/prefix ]
make
make install
ライブラリは現在、'libMagick++.a'(および/または libMagick++.so.5.0.39)のような名前になっており、prefix/lib にインストールされます。ヘッダーファイルは、Magick++.h が prefix/include に、残りのヘッダーファイルが prefix/include/Magick++ にインストールされます。
configure スクリプトが選択するオプションに影響を与えるには、configure スクリプトの実行時に 'make' オプション変数を指定できます。例えば、次のコマンドは
./configure CXX=CC CXXFLAGS=-O2 LIBS=-lposix
configure スクリプトに追加のオプションを指定します。利用可能なオプションを以下の表に示します。
configure に影響を与える環境変数
Make オプション変数 |
説明 |
CXX |
使用する C++ コンパイラの名前(例: 'CC -Xa' でコンパイラ 'CC -Xa' を使用) |
CXXFLAGS |
コンパイル時に使用するコンパイラフラグ(例: '-g -O2') |
CPPFLAGS |
ヘッダーファイルを探すためのインクルードパス(-I/somedir) |
LDFLAGS |
ライブラリを探すためのライブラリパス(-L/somedir)。ライブラリ実行パスという概念をサポートするシステムでは、実行時に共有ライブラリを見つけるために、-R/somedir または '-rpath /somedir' も必要になる場合があります。 |
LIBS |
リンクに必要な追加ライブラリ(-lsomelib) |
ImageMagick と Magick++ の Linux RPM は、ftp://ftp.imagemagick.org/pub/ImageMagick/linux/ からダウンロードできます。
Windows NT から Windows Vista までは、ImageMagick ftp サイト(およびミラー)の 'win2k' サブディレクトリにある NT 用 ImageMagick ソースパッケージでサポートされています。NT 用 ImageMagick ソースパッケージには、ImageMagick、Magick++、アドオンライブラリ(例:JPEG)、およびすぐに使用できる Visual C++ 8.0 ビルド環境のソースが含まれています。Magick++ をビルドするには、README.txt("Windows Win2K/XP VISUAL C++ 8.0 COMPILATION" の見出しの下)の構成とビルド手順をお読みください。
Windows NT 用 Cygwin Unix エミュレーション環境で、ImageMagick と Magick++ の両方をビルドできます。http://www.cygwin.com/ から Cygwin を入手してインストールしてください。http://www.cygwin.com/xfree/ から Cygwin 用の X11R6 環境を利用できます。Cygwin と GCC を使用してビルドするには、Unix でのビルド手順に従ってください。