Кажется, у меня больше проблем с запуском стандартных вещей Unix на Snow Leopard, чем с любой другой платформой, включая Windows cygwin
Последние пару дней я пытался заставить ImageMagick работать на Snow Leopard.
Самый очевидный способ, Mac Ports, не работает:
tppllc-Mac-Pro:ImageMagick-sl swirsky$ sudo port install imagemagick
---> Computing dependencies for p5-locale-gettext
---> Configuring p5-locale-gettext
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_perl_p5-locale-gettext/work/gettext-1.05" && /opt/local/bin/perl Makefile.PL INSTALLDIRS=vendor " returned error 2
Command output: checking for gettext... no
checking for gettext in -I/opt/local/include -arch i386 -L/opt/local/lib -lintl...gettext function not found. Please install libintl at Makefile.PL line 18.
no
Error: Unable to upgrade port: 1
Error: Unable to execute port: upgrade xorg-libXt failed
Before reporting a bug, first run the command again with the -d flag to get complete output.
tppllc-Mac-Pro:ImageMagick-sl swirsky$
Не желая тратить еще два дня, выясняя, почему в моем libintl нет функции «gettext», я попробовал другой маршрут: скрипт, упомянутый здесь: http://github.com/masterkain/ImageMagick-sl
Этот скрипт загружает и устанавливает ImageMagic независимо от проблем MacPorts
tppllc-Mac-Pro:ImageMagick-sl swirsky$ /usr/local/bin/convert
dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib
Referenced from: /opt/local/lib/libfontconfig.1.dylib
Reason: Incompatible library version: libfontconfig.1.dylib requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0
Trace/BPT trap
Он загружает все и прекрасно компилируется, но не удается, когда я пытаюсь его запустить, с сообщением выше.
Так что теперь я в двух шагах от ImageMagick, пытаясь установить более новую версию libiconv на мою машину.
Я скачал последнюю версию libiconv, скомпилировал и собрал ее. Я помещаю полученную библиотеку в / opt / local / lib, и все равно получаю то же сообщение об ошибке:
tppllc-Mac-Pro:.libs swirsky$ sudo mv libiconv.2.dylib /opt/local/lib/libiconv.2.dylib
tppllc-Mac-Pro:.libs swirsky$ convert
dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib
Referenced from: /opt/local/lib/libfontconfig.1.dylib
Reason: Incompatible library version: libfontconfig.1.dylib requires version 8.0.0 or later, but libiconv.2.dylib provides version 7.0.0
Trace/BPT trap
Теперь вот кое-что интересное. Сообщение об ошибке показывает, что оно выглядит в /opt/local/lib/libiconv.2.dylib.
otools -L показывает, что это реализует 8.0.0:
tppllc-Mac-Pro:.libs swirsky$ otool -L /opt/local/lib/libiconv.2.dylib
/opt/local/lib/libiconv.2.dylib:
/usr/local/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.0.0)
tppllc-Mac-Pro:.libs swirsky$
И, для хорошей цели, я установил DYLD_LIBRARY_PATH, чтобы убедиться, что этот каталог предназначен для динамических библиотек.
Так что, хотя у меня есть библиотека, которая предоставляет 8.0.0, она рассматривается как 7.0.0! Есть идеи, почему это произойдет?
Итак, вот мой вопрос: возможно ли заставить ImageMagick работать на OSX Snow Leopard? Существуют ли какие-либо бинарные дистрибутивы со встроенными статическими библиотеками, поэтому мне не нужно беспокоиться об этой проблеме