2021-05-12 14:32:11
Linux系統上編譯好的ImageMagick遷移到另一台機器
如何把編譯好的工具遷移到另一台機器上去,有時候我們會遇到這樣的問題,怎樣解決庫檔案的依賴問題就需要我們按照出錯提示去解決問題了,我以ImageMagick為例做下講解。
如何編譯安裝ImageMagick環境,參照我的上一篇文章Linux下ImageMagick的安裝和使用,連結:http://www.linuxidc.com/Linux/2017-03/141419.htm
在本文中兩台主機分別用server1和server2標識,server1為安裝編譯好ImageMagick的系統,server2則為未編譯安裝ImageMagick的系統。
首先把server1上編譯好的檔案傳到server2上,下面為server2上已經接收到的檔案
~/sxzhou> ll
total 40
drwxr-xr-x 7 was_wcm was_wcm 4096 Mar 3 10:30 ImageMagick
drwxr-xr-x 8 was_wcm was_wcm 4096 Mar 3 10:30 libpng-1.5.8
執行出錯:
~/sxzhou/ImageMagick/bin> ./convert
./convert: error while loading shared libraries: libMagickCore-7.Q16HDRI.so.2: cannot open shared object file: No such file or directory
可以發現是庫檔案缺失,把缺失的庫檔案拷到server2上就可以了
server1上查詢缺失的庫檔案
# find -name libMagickCore-7.Q16HDRI.so.2
./usr/local/ImageMagick/lib/libMagickCore-7.Q16HDRI.so.2
./home/sxzhouhou/ImageMagick-7.0.5-0/MagickCore/.libs/libMagickCore-7.Q16HDRI.so.2
可以發現除了安裝目錄下/usr/local/下也有庫檔案,拷貝/usr/local/ImageMagick到server2的/usr/local目錄下
再次執行出錯:
/home/was_wcm/sxzhou/ImageMagick/bin # ./convert
./convert: error while loading shared libraries: libpng15.so.15: cannot open shared object file: No such file or director
server1上查詢
# find / -name libpng15.so.15
/usr/local/lib/libpng15.so.15
/home/sxzhouhou/libpng-1.5.8/.libs/libpng15.so.15
server1上png相關的庫檔案
/usr/local/lib # ls libpng
libpng.a libpng.so libpng15.la libpng15.so.15 libpng.la libpng15.a libpng15.so libpng15.so.15.8.0
拷貝server1上png相關的庫檔案到server2的/usr/local/lib/目錄下
再次執行出錯:
/home/was_wcm/sxzhou/ImageMagick/bin # ./convert
相關文章