2

Tomcat + Ubuntu(Linux)でTess4jを使用してUnsatisfiedLinkErrorを取得しています

java.lang.UnsatisfiedLinkError: Error looking up function 'TessBaseAPICreate': /usr/lib/libtesseract.so.3.0.2: undefined symbol: TessBaseAPICreate
at com.sun.jna.Function.<init>(Function.java:208)
at com.sun.jna.NativeLibrary.getFunction(NativeLibrary.java:536)
at com.sun.jna.NativeLibrary.getFunction(NativeLibrary.java:513)
at com.sun.jna.NativeLibrary.getFunction(NativeLibrary.java:499)

ライブラリは apt-get install tesseract-ocr でインストールされます。Tess4j のバージョンは 2.0.0 です。MacOS/OracleJDK1.7 (64 ビット) ではすべて動作するようですが、Ubuntu/Linux/OracleJDK1.7 (64 ビット) では動作しないようです。

一部のstackoverflow-searchは、間違ったバージョンまたは存在しないライブラリについての手がかりを提供しますが、ライブラリはすぐそこにあります...

ls -al /usr/lib/libtesseract.so.3.0.2
-rw-r--r-- 1 root root 4219544 Feb 25  2012 /usr/lib/libtesseract.so.3.0.2

解決策やヒントを持っている人はいますか?

4

2 に答える 2

0

これは、tesseract のバージョンが ubuntu バージョンと互換性がない可能性があります

私のプログラムはwin10で実行され、ubuntu 16にはエラーはありませんが、ubuntu 12.04ではこのエラーが発生します

多分私はコマンドでtesseractをインストールします

sudo apt-get install tesseract-ocr

しかし、実際にはフローでインストールした後、ubuntu 12で

sudo apt-get install libpng-dev libjpeg-dev libtiff-dev zlib1g-dev
sudo apt-get install gcc g++
sudo apt-get install autoconf automake libtool checkinstall

レプトニカをソースからインストールします。執筆時点での最新バージョンは 1.69 です。

wget http://www.leptonica.org/source/leptonica-1.69.tar.gz  (if you can't,download leptonica-1.69.tar.gz from the internet)
tar -zxvf leptonica-1.69.tar.gz
cd leptonica-1.69
./configure
make
sudo checkinstall
sudo ldconfig

次に、ソースから Tesseract OCR をインストールします。

wget https://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.02.02.tar.gz
(maybe you can download tesseract-ocr-3.02.02.tar.gz from the internet and then upload to the server )
tar -zxvf tesseract-ocr-3.02.02.tar.gz
cd tesseract-ocr
./autogen.sh
./configure
make (this may take a while)
sudo make install
sudo ldconfig

この後、私はこの問題を解決します

于 2016-12-26T11:02:40.507 に答える