构建tesseract Android工具时出错

构建tesseract Android工具时出错,android,android-ndk,ocr,tesseract,Android,Android Ndk,Ocr,Tesseract,我正在尝试为android构建Tesseract,但遇到了一些问题。我正在遵循一个示例,其中给出了构建Tesseract的以下说明 cd <project-directory> curl -O https://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.02.02.tar.gz curl -O http://leptonica.googlecode.com/files/leptonica-1.69.tar.gz tar -zx

我正在尝试为android构建Tesseract,但遇到了一些问题。我正在遵循一个示例,其中给出了构建Tesseract的以下说明

cd <project-directory>
curl -O https://tesseract-ocr.googlecode.com/files/tesseract-ocr-3.02.02.tar.gz
curl -O http://leptonica.googlecode.com/files/leptonica-1.69.tar.gz
tar -zxvf tesseract-ocr-3.02.02.tar.gz
tar -zxvf leptonica-1.69.tar.gz
rm -f tesseract-ocr-3.02.02.tar.gz
rm -f leptonica-1.69.tar.gz
mv tesseract-3.02.02 jni/com_googlecode_tesseract_android/src
mv leptonica-1.69 jni/com_googlecode_leptonica_android/src
ndk-build -j8
android update project --target 1 --path .
ant debug (release)
所以我不太确定它们应该去哪里,所以我把它们放在了提取的文件夹中。 跑步时也是如此

ndk-build -j8 
我得到以下错误

In file included from jni/com_googlecode_leptonica_android/pixa.cpp:17:0:
jni/com_googlecode_leptonica_android/common.h:22:24: fatal error: allheaders.h: No such file or directory
#include <allheaders.h>
                       ^
In file included from jni/com_googlecode_leptonica_android/pix.cpp:17:0:
jni/com_googlecode_leptonica_android/common.h:22:24: fatal error: allheaders.h: No such file or directory
#include <allheaders.h>
                       ^
compilation terminated.
In file included from jni/com_googlecode_leptonica_android/readfile.cpp:17:0:
jni/com_googlecode_leptonica_android/common.h:22:24: fatal error: allheaders.h: No such file or directory
#include <allheaders.h>
                       ^
compilation terminated.
compilation terminated.
In file included from jni/com_googlecode_leptonica_android/jni.cpp:17:0:
jni/com_googlecode_leptonica_android/common.h:22:24: fatal error: allheaders.h: No such file or directory
#include <allheaders.h>
                       ^
compilation terminated.
In file included from jni/com_googlecode_leptonica_android/utilities.cpp:17:0:
jni/com_googlecode_leptonica_android/common.h:22:24: fatal error:   allheaders.h: No such file or directory
#include <allheaders.h>
                       ^
compilation terminated.
In file included from jni/com_googlecode_leptonica_android/writefile.cpp:17:0:
jni/com_googlecode_leptonica_android/common.h:22:24: fatal error: allheaders.h: No such file or directory
#include <allheaders.h>
                       ^
compilation terminated.
In file included from jni/com_googlecode_leptonica_android/box.cpp:17:0:
jni/com_googlecode_leptonica_android/common.h:22:24: fatal error: allheaders.h: No such file or directory
#include <allheaders.h>
                       ^
compilation terminated.
make: *** [obj/local/armeabi/objs/lept/pix.o] Error 1
make: *** Waiting for unfinished jobs....
make: *** [obj/local/armeabi/objs/lept/readfile.o] Error 1
make: *** [obj/local/armeabi/objs/lept/utilities.o] Error 1
make: *** [obj/local/armeabi/objs/lept/jni.o] Error 1
make: *** [obj/local/armeabi/objs/lept/writefile.o] Error 1
make: *** [obj/local/armeabi/objs/lept/pixa.o] Error 1
make: *** [obj/local/armeabi/objs/lept/box.o] Error 1
我们正在工作

在构建过程中,我遇到以下错误:

jni/com_googlecode_tesseract_android/src/dict/permdawg.cpp: In member function 'void tesseract::Dict::go_deeper_dawg_fxn(const char*, const BLOB_CHOICE_LIST_VECTOR&, int, const CHAR_FRAGMENT_INFO*, bool, WERD_CHOICE*, float*, float*, WERD_CHOICE*, int*, void*)':
jni/com_googlecode_tesseract_android/src/dict/permdawg.cpp:208:62: error: format not a string literal and no format arguments [-Werror=format-security]
       fprintf(output_ambig_words_file_, word_str.string());
                                                          ^
cc1plus: some warnings being treated as errors
make: *** [obj/local/armeabi/objs/tess/src/dict/permdawg.o] Error 1
make: *** Waiting for unfinished jobs....

我也有同样的问题。 以下是我遵循的步骤:

从github.com/alanv/tesseract-android-tools下载了tesseract_android_工具项目 提取并通过终端移动到tesseract android工具 旋度-O 旋度-O tar-zxvf tesseract-ocr-3.02.02.tar.gz tar-zxvf-leptonica-1.69.tar.gz rm-f tesseract-ocr-3.02.02.tar.gz rm-f瘦子甲-1.69.tar.gz mv tesseract-3.02.02 jni/com\u googlecode\u tesseract\u android/src mv leptonica-1.69 jni/com_谷歌代码_leptonica_android/src 我试着运行android-ndk-r9,但它一直抛出错误jni/com\u googlecode\u tesseract\u android/src/dict/permdawg.cpp:208:62:错误:格式不是字符串文字,也没有格式参数[-Werror=format security] cc1plus.exe:某些警告被视为错误 我修改了fprintfoutput\u ambig\u words\u文件,word\u str.string中的jni/com\u googlecode\u tesseract\u android/src/dict/permdawg.cpp第208行;到fprintfoutput\u ambig\u words\u file\u,%s,word\u str.string; 我试着运行android.bat更新项目-p。但是不断地抱怨这个错误:项目要么没有设定目标,要么目标无效。 请为“android.bat update”命令提供-target。 我通过首先运行android list targets来获得目标,然后运行android更新项目-t7-p来提供目标。因为7是我的首选目标 成功了。 很抱歉迟了答复
如果jni/com\u googlecode\u tesseract\u android/src为空,这意味着至少这一步:mv tesseract-3.02.02 jni/com\u googlecode\u tesseract\u android/src失败。运行教程中的所有命令时,您收到了什么错误消息?我没有运行所有命令。当我到达ndk build-j8时,我停止了,因为我在原始帖子的下半部分收到了上述错误。如果您的src目录不在那里,这意味着实际失败的步骤在ndk-build之前。我如何解决这个问题?
mv tesseract-ocr jni/com_googlecode_tesseract_android/src
mv leptonica-1.69 jni/com_googlecode_leptonica_android/src
jni/com_googlecode_tesseract_android/src/dict/permdawg.cpp: In member function 'void tesseract::Dict::go_deeper_dawg_fxn(const char*, const BLOB_CHOICE_LIST_VECTOR&, int, const CHAR_FRAGMENT_INFO*, bool, WERD_CHOICE*, float*, float*, WERD_CHOICE*, int*, void*)':
jni/com_googlecode_tesseract_android/src/dict/permdawg.cpp:208:62: error: format not a string literal and no format arguments [-Werror=format-security]
       fprintf(output_ambig_words_file_, word_str.string());
                                                          ^
cc1plus: some warnings being treated as errors
make: *** [obj/local/armeabi/objs/tess/src/dict/permdawg.o] Error 1
make: *** Waiting for unfinished jobs....