私はOCRAndroidアプリに取り組んでいますが、Tesseract-ocrライブラリで多くの問題が発生しています。ライブラリをビルドするためにREADMEファイルに含まれているすべての手順を実行しましたが、libjpeg.soをコンパイルしただけです:-(
今、私が取ったすべてのステップを説明するので、私が間違っていることをあなたが知るのに役立ちます
私は問題なく実行します:
cd <project-directory>
mkdir external; cd external
wget http://tesseract-ocr.googlecode.com/files/tesseract-3.00.tar.gz
tar -zxvf tesseract-3.00.tar.gz
rm -f tesseract-3.00.tar.gz
wget http://leptonica.googlecode.com/files/leptonlib-1.66.tar.gz
tar -zxvf leptonlib-1.66.tar.gz
rm -f leptonlib-1.66.tar.gz
実行時:
git clone git://android.git.kernel.org/platform/external/jpeg.git libjpeg
私は得る:
Cloning into 'libjpeg'...
fatal: unable to connect to android.git.kernel.org:
android.git.kernel.org[0: 149.20.4.77]: errno=Connection timed out
それを解決するために、私はミラーを使用して実行します:
git clone git:https://github.com/android/platform_external_jpeg libjpeg
わかりました、それはうまくいくようです。私は得る:
Cloning into 'libjpeg'...
remote: Counting objects: 324, done.
remote: Compressing objects: 100% (229/229), done.
remote: Total 324 (delta 142), reused 269 (delta 93)
Receiving objects: 100% (324/324), 756.37 KiB | 412 KiB/s, done.
Resolving deltas: 100% (142/142), done.
実行中に問題はありません:
cd libjpeg
git checkout e0eadaa39b72e33f032220246c771d7302ebeaf8
cd ..
export TESSERACT_PATH=${PWD}/tesseract-3.00
export LEPTONICA_PATH=${PWD}/leptonlib-1.66
export LIBJPEG_PATH=${PWD}/libjpeg
cd ..
しかし、ndk-buildを実行した後、エラーが発生します:
/cygdrive/c/Android_NDK/build/core/build-local.mk:40: build/core/init.mk: No such file or directory
/cygdrive/c/Android_NDK/build/core/build-local.mk:122: *** falta un `endif'. Alto.
どこ "falta un`endif'。アルト。「」は「endif」がないことを意味します。止まる。「」
OK、ここではtesseractプロジェクトのAndroid.mkを使用し、プロジェクトディレクトリに適合させるための小さな変更を導入します。[ここにあります][4]
今私は実行します
ndk-build
そして私は得るだけです
libs / armeabi / libjpg.so
これは、Android.mkに次の行を追加する必要があるためだと思います。
include $(call all-subdir-makefiles) $(TESSERACT_PATH)/Android.mk
include $(call all-subdir-makefiles) $(LEPTONICA_PATH)/Android.mk
私はそうします。LEPTONICA_PATHとTESSERACT_PATHにはAndroid.mkファイルがないので、以前と同じように、tesseract-android-toolsプロジェクトからそれらを取得します。
- [tesseractのAndroid.mk][5]、
- leptonicaのAndroid.mk]
それから私は実行します
C:\tesseract\jni>ndk-build
C:/Android_NDK/build/core/build-binary.mk:240: *** target pattern contains no `%'. Stop.
そしてそこで私は立ち往生しました。私は解決しようとしたので、いくつかのことを試しました(その中で、stackoverflowで見つけたいくつかの提案)が、どれも問題を解決しませんでした。
私はあなたにすべての詳細を与えたので、あなたが私が犯している間違いを見つけやすくなります。
(ああ!私はWinXP + Cygwinを使用しています)
前もって感謝します