dyld: Library not loaded: /usr/local/opt/jpeg/lib/libjpeg.8.dylib Referenced from: /usr/local/lib/liblept.5.dylib Reason: image not found'使用pytesserac... ...
dyld: Library not loaded: /usr/local/opt/jpeg/lib/libjpeg.8.dylib Referenced from: /usr/local/lib/liblept.5.dylib Reason: image not found'
使用pytesseract解析圖片,出現上面錯誤。
用這句報錯,去谷歌搜索,發現StackOverflow已經有人碰到1,已經有人回答瞭解決辦法。這是由於homebrew的一些問題造成的。
解決方式一
直接用wget下載最新的jpeg庫,覆蓋原來出問題的庫。
wget -c http://www.ijg.org/files/jpegsrc.v8d.tar.gz
tar xzf jpegsrc.v8d.tar.gz
cd jpeg-8d
./configure
make
cp ./.libs/libjpeg.8.dylib /usr/local/opt/jpeg/lib
解決方式二
第一個方法很簡單,但是並不是正確的辦法,因為它解決了實際問題,但是會破壞homebrew元數據的完整性。
分析問題
這是因為Homebrew的jpeg
庫已經升級到了v9,但是現在的PIL還是使用舊版本的庫。
使用正確的方式下載jpeg
如果你沒有運行brew cleanup
,現在你可以直接轉換使用舊版本的jepg:
brew switch jpeg 8d
如果出現錯誤: jpeg does not have a version "8d" in the Cellar
。你需要首先恢復它:
cd $(brew --prefix)/Homebrew/Library/Taps/homebrew/homebrew-core
git checkout b231469
HOMEBREW_NO_AUTO_UPDATE=1 brew install jpeg
git checkout master
brew switch jpeg 8d