參考文檔地址:https://www.pianshen.com/article/9026369424/
https://www.lizenghai.com/archives/43148.html
https://www.cnblogs.com/dongyangblog/archive/2019/07/12/11177233.html
1 安裝centos7系統依賴
命令如下:
yum install -y libpng-devel libjpeg-devel libtiff-devel
yum install -y libpng-devel libjpeg-devel libtiff-devel
2 安裝leptonica
下載leptonica-1.78,下載地址:
http://www.leptonica.org/source/leptonica-1.78.0.tar.gz
解壓,使用命令:tar -xzvf leptonica-1.78.0.tar.gz
進入解壓后的目錄,使用命令:cd leptonica-1.78.0
配置編譯,采用默認配置,使用命令:./configure
編譯,使用命令:make
安裝,使用命令:make install
3 安裝tesseract-ocr
下載tesseract-ocr4.0,下載地址:
https://codeload.github.com/tesseract-ocr/tesseract/tar.gz/4.0.0
解壓,使用命令:tar -xzvf tesseract-4.0.0.tar.gz
進入解壓后的目錄,使用命令:cd tesseract-4.0.0
從上面圖片中,我們注意到解壓文件里只有一個可執行文件autogen.sh
因此我們執行這個shell腳本文件,使用命令:./autogen.sh
執行完后,在當前目錄就生成了其它一些可執行文件
使用配置,命令:./configure
發現如下錯誤
提示這個錯誤是因為在上面的步驟中雖然我們安裝了leptonica-1.78,但是卻沒有將leptonica設置為環境變量。
由於上面我們都是采用默認的配置,因此第三方庫是安裝在/usr/local這個目錄下
進入lib目錄可以看到新安裝的liblept
在這里插入圖片描述
在這個目錄輸入命令:pkg-config --version查看pkg-config是否安裝
如果沒有安裝,就先安裝,使用命令:yum install pkgconfig
3.1 將leptonica-1.78添加到環境變量里
使用命令:vim /etc/profile
在打開的文件結尾添加:
export LD_LIBRARY_PATH=/usr/local/lib
export LIBLEPT_HEADERSDIR=/usr/local/include
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
有的時候新建環境變量也這樣寫:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH/usr/local/lib
保存退出
使環境變量生效,命令:source /etc/profile
然后我們在重新配置tesseract,使用命令: ./configure
這次配置就沒有錯誤了。
編譯,使用命令:make
安裝,使用命令:make install
動態鏈接,使用命令:ldconfig
最后安裝完成,使用命令:tesseract --version
顯示如下:
tesseract 4.0.0
leptonica-1.78.0
libjpeg 6b (libjpeg-turbo 1.2.90) : libpng 1.5.13 : libtiff 4.0.3 : zlib 1.2.7
切換到項目發布的目錄再進入x64 (64位系統選擇此目錄)目錄然后做映射。
映射哪些文件主要是看我們發布后X64里面的dll文件叫什么,比如我們發現是libtesseract400.dll 和libtesseract400.dll 。不同版本可能后面的數字不一樣。
然后我們找到剛剛安裝Tesseract的目錄然后搜索libtesseract和libtesseract開頭的so文件即可。最后我們會找到libtesseract.so.4.0.1.so、liblept.so.5.0.3.so文件。然后將這兩個文件做映射,映射到我們項目目錄中的名稱需要和本身項目中dll文件一致,只是后綴為so,不再是dll了。
映射命令如下
ln -s /usr/lib64/libtesseract.so.4.0.1 libtesseract400.so
ln -s /usr/lib64/liblept.so.5.0.3 liblept1760.so
注意這些dll或者so后面的版本號即數字不同版本不同時期可能都不一樣,以自己安裝的為准。