轉載請注明出處:
http://www.cnblogs.com/darkknightzh/p/5661439.html
參考網址:
http://comments.gmane.org/gmane.comp.video.graphicsmagick.core/514
http://www.graphicsmagick.org/INSTALL-unix.html
https://github.com/clementfarabet/graphicsmagick
http://www.cnblogs.com/cocowool/archive/2010/08/16/1800954.html
http://blog.csdn.net/randomnet/article/details/7973813
?
160714說明:如果需要使用torch及GraphicsMagick并讀取jpg圖像的話,最好先安裝libjpeg的庫,然后在安裝GraphicsMagick,最后再安裝torch。
因為剛才GraphicsMagick調用jpeg沒有錯誤,但是torch里面的某個模塊又提示找不到libjpeg.so的庫了,之后只能先強制卸載image包:luarocks remove image --force,再重新luarocks install image。之后正常了。。。
?
Ubuntu真的能把人搞瘋啊。。。之前在ubuntu16上安裝GraphicsMagick貌似沒出問題,在torch里面直接使用require ‘graphicsmagick’沒有錯誤,但是在ubuntu14上面,裝了之后,就提示:
/home/xxx/torch/install/share/lua/5.1/trepl/init.lua:384: /home/xxx/torch/install/share/lua/5.1/trepl/inti.lua:384: …/xx/torch/install/share/lua/5.1/graphicsmagick/Image.lua:322 : libGraphicsMagickWand.so: cannot open shared object file: No such file or directory.
如下圖:
說明:這個是lua里面的命令。安裝完torch及https://github.com/clementfarabet/graphicsmagick中的graphicsmagick后,運行的命令。安裝torch的graphicsmagick直接使用luarocks就可以了。
后來在網上搜了。。。額,好久,終于解決了。不過不代表本方法也適用于其他遇到該問題的人。
安裝GraphicsMagick步驟如下:
1. 去官網下載GraphicsMagick:http://www.graphicsmagick.org/
2. 解壓后,cd到該文件夾中。
3. 運行如下命令:
./configure '--with-magick=wand/GraphicsMagickWand-config' '--enable-shared'
說明:第一個with是生成libGraphicsMagickWand.so(可能默認沒有生成這個,在lib里面確實沒有看到這個庫),第二個with是生成共享庫(默認可能是靜態的吧,我開始沒用第二個,得到的庫后綴是.a)
4. 運行如下命令:
make sudo make install
5. 到此之后,提示找不到libGraphicsMagickW.so.3,后來在網上繼續搜索。網址:http://comments.gmane.org/gmane.comp.video.graphicsmagick.core/514中Nguyen Vu Hung給出了解決方法:
?
試著在終端中敲這些命令,如下:
sudo echo “/usr/local/lib” sudo /sbin/ldconfig
截圖如下:
好吧,其實我不懂這些命令什么意思,也沒有去搜索。第二條命名更加不清楚是敲入的還是怎么弄的,反正提示權限不夠。然后就敲了第三條命令。然后就沒有然后了。
6. 在終端中敲 gm,安裝成功了,如下:
?
說明:不記得開始ubuntu16怎么成功的了。只怪當時沒有記一下。也可以自動安裝,命令網上搜一下,不過我好像沒有自動安裝。
更新:
剛才去ubuntu16下面看了一下,/usr/local/lib下面確實也沒有libGraphicsMagickWand.so,如下圖:
但是在th中直接使用require ‘graphicsmagick’就沒有錯誤,如下圖:
理解不能。
更新160714:使用graphicsmagick的Image來load一張jpg圖像,開始提示:
No decode delegate for this image format
此時http://blog.csdn.net/randomnet/article/details/7973813說是由于沒有裝jpg的解碼包。因而下載了jpeg9吧,裝好后,重新安裝graphicsmagick,又提示:
Wrong JPEG library version: library is 80, caller expects 90
又去ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/delegates/(這個網址不知道是內容多還是網速渣還是怎么回事,在win系統下,打開里面啥都沒有。。。在ubuntu下打開能看到里面的文件)下載了jpegsrc.v6b.tar.gz,裝上去并重新安裝graphicsmagick后,能正常load進來jpg圖像了。。。