続 ImageMagick をビルドする
年末に一瞬 7.0.0 のアナウンスがあったような気がするのだけれど、6.9.2-x に戻ってしまった。何か問題があったのかな?さて、この度 6.9.3 がリリースされたのでこちらをビルドすることにした。
前回は png が有効にならなくてあれこれと作業をしたのだが、今回は jpeg と tiff が有効にならないのだった。何だかんだでオプションに LDFLAGS=-L/usr/local/lib
を付けると認識するようになり、ビルドも完了した。もう /usr/local/
以下はデフォルトで見てくれない時代なのかな?pkg-config をインストールしてから上手くいかないことばかりだわ。
以上。
上記の結果に辿り付くまでに、種々のライブラリもアップデートしたのでメモ。必要なライブラリは ここ にまとまってある。
pkg-config
0.29 をビルドした。glib をインストールしていないので下記のオプションが必要。
./configure CC=clang --with-internal-glib
しかし、下記のエラーが出てビルドができなかった。どうやら同包されている glib に問題があるみたい。ちなみに 0.28 は警告はでるもののビルドは完了する。
Undefined symbols for architecture x86_64: "_CFRelease", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) "_CFStringGetCString", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) "_CFStringGetCStringPtr", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) "_CFStringGetLength", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) "_CFURLCopyFileSystemPath", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) "_CFURLCreateFromFSRef", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) "_FSFindFolder", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) "_kCFAllocatorSystemDefault", referenced from: _find_folder in libglib-2.0.a(libglib_2_0_la-gutils.o) ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
StackOverflow によると、下記のオプションにすれば良いとのこと。
./configure LDFLAGS="-framework CoreFoundation -framework Carbon" --with-internal-glib
何で今時 Carbon ?と思うけど、ビルドできたので良しとする。
libpng
1.6.20 にアップデートした。
make -f scripts/makefile.darwin CC=clang ZLIBLIB=/usr/local/lib ZLIBINC=/usr/local/include
libjpeg
リビルドした。
libtiff
4.0.6 をビルドした。コンフィグオプションは下記のように jpeg の場所を教えないとダメになってしまった。
./configure --with-jpeg-include-dir=/usr/local/include --with-jpeg-lib-dir=/usr/local/lib