這次想在 OS X 安裝 GraphicsMagick 和 Pgmagick,GraphicsMagick 是一套圖形處理的 library,比 ImageMagick 更快更好。其實我也沒有要處理太複雜的事情,就 圖形的裁切、縮放、套用一些濾鏡而已,但速度是我考量的。而 Pgmagick 則是 for python 的 wrapper。
直接抓 GraphicsMagick 原始碼下來編譯
遇到問題:
Undefined symbols for architecture x86_64:
"___builtin_object_size", referenced from:
_BlurImageScanlines.omp_fn.1 in magick_libGraphicsMagick_la-effect.o
_XShearImage.omp_fn.0 in magick_libGraphicsMagick_la-shear.o
_YShearImage.omp_fn.1 in magick_libGraphicsMagick_la-shear.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
make[1]: *** [magick/libGraphicsMagick.la] Error 1
make: *** [all] Error 2
遇到這種問題都很沒轍,上次遇到時好像是 dependency 的library configure 時沒有加 --enable-shared,但這次就不知道怎麼找了。
加了一些有的沒的環境變數 LDFLAGS="-arch x86_64" CXXFLAGS="-arch x86_64" CFLAGS="-m64" ... 沒用。
試著用 MacPorts
port install graphicsmagic結果在裝 pgmagick 時會遇到 "Exception: Magick++ not found" 的訊息,表示只裝了 graphicsmagick 而沒有 graphicsmagick-c++,但MacPorts有沒有這玩意。
看到有人說要用 brew 來裝:
Installing pgmagick on OS X - rohan singh
python - How to build pgmagick under pythonbrew on OS X? - Stack Overflow
$ brew install graphicsmagick --with-magick-plus-plus $ brew install imagemagick --with-magick-plus-plus $ brew install boost --with-thread-unsafe
遇到:
$ link --debug jpeg Linking /usr/local/Cellar/jpeg/8d... Error: Could not symlink file: /usr/local/Cellar/jpeg/8d/bin/djpeg Target /usr/local/bin/djpeg already exists. You may need to delete it.Issue #11092: Install ImageMagick Fails Due to "brew link jpeg" · mxcl/homebrew
可能是之前有下載 libjpeg source code 下來安裝,直接把 target file 刪掉在執行一次就好了。
再來裝 pgmagick
$ pip install pgmagick ... ld: library not found for -lboost_python collect2: ld returned 1 exit status error: command 'g++' failed with exit status 1又來了...
原因是只有
/usr/local/lib/libboost_python-mt.a /usr/local/lib/libboost_python-mt.dylib而不是
/usr/local/lib/libboost_python.a /usr/local/lib/libboost_python.dylib
根據 stackoverflow 討論串的指示,你得 clone pgmagick 的 source code 下來改
$ hg clone https://bitbucket.org/hhatto/pgmagick $ cd pgmagic $ vim setup.py # 把 boost_lib = "boost_python" 改為 boost_lib = "boost_python-mt" $ python setup.py build $ python setup.py install
最後最後...終於安裝好了

PS. 在CentOS只要
$ yum install GraphicsMagick-c++-devel $ yum install boost-devel $ pip install pgmagick搞定。

59610444D8
回覆刪除kiralık hacker
hacker arıyorum
belek
kadriye
serik
C8346FD9
回覆刪除korkuteli esçort
nevşehir esçort
esçort tekirdağ
İzmit esçort numaraları
diyarbakır esçort numaraları
maraş esçort
bursa anal esçort
çorlu esçort
esçort bayan diyarbakır