【问题标题】:Why, while compiling a program, it is unable to find tesseract?为什么在编译程序时,找不到 tesseract?
【发布时间】:2012-02-15 17:09:03
【问题描述】:

我正在尝试编译 OCR 0.4,谷歌的光学识别程序。

正如自述文件中所写,他们需要:

1) 确保您已安装这些软件包(当前的 Ubuntu/Debian 版本应该可以工作): libpng(带标题) libjpeg(带标题) libtiff(带标题)

2) 从http://code.google.com/p/iulib安装iulib

3) 从 Subversion 安装当前版本的 tesseract 存储库 (http://code.google.com/p/tesseract-ocr)

4) 从发布目录,运行 。/配置 制作 须藤制作安装

我已经完成了上面所有的段落,然后当我在命令行中输入“./configure”时,我得到了这个错误:

检查 /usr/include/tesseract/baseapi.h... 没有配置:错误: 找不到正方体!如果不选择 --without-tesseract 想要使用它或指定安装路径 --with-tesseract=

到目前为止,我试图解决这个问题的方法是尝试通过输入 "which tesseract" 来指定我得到的 tesseract 路径来编译,这给了我

/usr/local/bin/tesseract

所以我输入了./configure --with-tesseract=/usr/local/bin/tesseract,我得到了同样的错误。

我为什么会得到这个?

提前致谢

编辑 - 使用下面答案中所述的方法后,出现以下错误:

Localhost:ocropus giorgio$ make 全力以赴。克++ -DPACKAGE_NAME=\"ocropus\" -DPACKAGE_TARNAME=\"ocropus\" -DPACKAGE_VERSION=\"0.3\" -DPACKAGE_STRING=\"ocropus\ 0.3\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"ocropus\" - DVERSION=\"0.3\" -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INT_TYPES_H=1 -DHAVE_STD_H=1 -DHAVE_UNISTDINT_H= 1 -DHAVE_FLOAT_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_UNISTD_H=1 -DHAVE_WCHAR_H=1 -DHAVE_LIBZ=1 -DHAVE_LIBPNG=1 -DHAVE_LIBJPEG=1 -DHAVE_LIBTIFF=1 -DHAVE_LIBIULIB=1 -DHAVE_LIBPTHREAD=1 - DHAVE_LIBTESERACT_FULL=1 -DHAVE_LIBLEPT=1 -DHAVE_LIBGSLCBLAS=1 -DHAVE_LIBGSL=1 -DHAVE_LIBBLAS=1 -DHAVE_FORK=1 -DHAVE_VFORK=1 -DHAVE_WORKING_VFORK=1 -DHAVE_WORKING_FORK=1 -DHAVE_DUP2=1 -DHAVE_MEMSET=1 -DHAVE_SQRT=1 -DHAVE 1 -DHAVE_STRDUP=1 -DHAVE_STRRCHR=1 -I。 -I./include -I./ocr-utils -I/usr/local/include -I/usr/local/include/tesseract -DHAVE_GSL -I/usr/local/include/tesseract -DHAVE_TESSERACT -I/usr/local /include/leptonica -DHAVE_LEPTONICA -g -O2 -Wall -Wno-sign-compare -Wno-write-strings -Wno-deprecated -g -O2 -MT glclass.o -MD -MP -MF .deps/glclass.Tpo - c -o glclass.o test -f './ocr-line/glclass.cc' || echo './'./ocr-line/glclass.cc 在文件中 包含在 ./include/glinerec.h:57 中, 来自 ./ocr-line/glclass.cc:5: ./include/glutils.h:139: 警告:忽略 #pragma omp parallel ./ocr-line/glclass.cc:105:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:129:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:175:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:236:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:421:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:644:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:1166:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:1403:警告:忽略#pragma omp parallel ./ocr-line/glclass.cc:1623:警告:忽略#pragma omp parallel ./ocr-utils/components.h:275:警告:'结构 ocropus::IComponentConstructor' 有虚函数但非虚函数 析构函数/usr/local/include/colib/narray.h:在成员函数中 'colib::narray& colib::narray::truncate(int) [with T = char]': ./ocr-utils/narray-binio.h:48:从这里实例化 /usr/local/include/colib/narray.h:261:警告:没有返回语句 返回非void /usr/local/include/colib/narray.h的函数:在 成员函数‘colib::narray& colib::narray::truncate(int) [with T = int]': ./ocr-line/glclass.cc:295: 从这里实例化 /usr/local/include/colib/narray.h:261:警告:没有返回语句 返回非 void /usr/local/include/colib/rowarrays.h 的函数:在 函数‘T colib::rowdist_euclidean(colib::narray&, int, colib::narray&) [with T = float]': ./ocr-line/glclass.cc:396:
从这里/usr/local/include/colib/rowarrays.h:94 实例化:错误: 重载‘sqrt(float)’的调用不明确 /usr/local/include/colib/iarith.h:345:注意:候选人是: colib::interval colib::sqrt(colib::interval) /usr/local/include/colib/iarith.h:620:注意:
colib::dinterval colib::sqrt(colib::dinterval) ./ocr-utils/components.h:在全局范围内:./ocr-utils/components.h: 在实例化 'ocropus::ComponentConstructorNew': ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::MappedClassifier]’ ./ocr-line/glclass.cc:1795:
从这里实例化 ./ocr-utils/components.h:280: warning: ‘struct ocropus::ComponentConstructorNew' 有 虚函数但非虚析构函数./ocr-utils/components.h: 在实例化 'ocropus::ComponentConstructorNew': ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::Float8Buffer]' ./ocr-line/glclass.cc:1796: 实例化 从这里 ./ocr-utils/components.h:280: 警告:'struct ocropus::ComponentConstructorNew' 具有虚拟 函数但非虚拟析构函数./ocr-utils/components.h:在 的实例化 'ocropus::ComponentConstructorNew': ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::KnnClassifier]' ./ocr-line/glclass.cc:1798: 实例化 从这里 ./ocr-utils/components.h:280: 警告:'struct ocropus::ComponentConstructorNew' 具有虚拟 函数但非虚拟析构函数./ocr-utils/components.h:在 “ocropus::ComponentConstructorNew”的实例化: ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::BitNN]' ./ocr-line/glclass.cc:1799: 从这里实例化 ./ocr-utils/components.h:280:警告:'结构 ocropus::ComponentConstructorNew' 具有虚拟 函数但非虚拟析构函数./ocr-utils/components.h:在 的实例化 'ocropus::ComponentConstructorNew': ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::AutoMlpClassifier]’ ./ocr-line/glclass.cc:1801:
从这里实例化 ./ocr-utils/components.h:280: warning: ‘struct ocropus::ComponentConstructorNew' 有 虚函数但非虚析构函数./ocr-utils/components.h: 在实例化 'ocropus::ComponentConstructorNew2': ./ocr-utils/components.h:310:
从‘void ocropus::component_register2(const char*, bool) [with T = glinerec::MappedClassifier, S = glinerec::AutoMlpClassifier]’ ./ocr-line/glclass.cc:1802:
从这里实例化 ./ocr-utils/components.h:286: warning: ‘struct ocropus::ComponentConstructorNew2' 具有虚函数但非虚函数 析构函数./ocr-utils/components.h:在实例化 'ocropus::ComponentConstructorNew': ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::AdaBoost]' ./ocr-line/glclass.cc:1804: 实例化自 这里./ocr-utils/components.h:280:警告:'struct ocropus::ComponentConstructorNew' 具有虚拟 函数但非虚拟析构函数./ocr-utils/components.h:在 的实例化 'ocropus::ComponentConstructorNew2': ./ocr-utils/components.h:310: 实例化 来自‘void ocropus::component_register2(const char*, bool) [with T = glinerec::MappedClassifier, S = glinerec::AdaBoost]’ ./ocr-line/glclass.cc:1805:从这里实例化 ./ocr-utils/components.h:286:警告:'结构 ocropus::ComponentConstructorNew2' 具有虚函数但非虚析构函数 ./ocr-utils/components.h:在实例化 'ocropus::ComponentConstructorNew': ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::CascadedMLP]' ./ocr-line/glclass.cc:1807: 实例化 从这里 ./ocr-utils/components.h:280: 警告:'struct ocropus::ComponentConstructorNew' 具有虚拟 函数但非虚拟析构函数./ocr-utils/components.h:在 的实例化 'ocropus::ComponentConstructorNew2': ./ocr-utils/components.h:310: 实例化 来自‘void ocropus::component_register2(const char*, bool) [with T = glinerec::MappedClassifier, S = glinerec::CascadedMLP]’ ./ocr-line/glclass.cc:1808:从这里实例化 ./ocr-utils/components.h:286:警告:'结构 ocropus::ComponentConstructorNew2' 具有虚函数但非虚函数 析构函数./ocr-utils/components.h:在实例化 'ocropus::ComponentConstructorNew': ./ocr-utils/components.h:306:从“void”实例化 ocropus::component_register(const char*, bool) [with T = glinerec::LatinClassifier]' ./ocr-line/glclass.cc:1810: 实例化 从这里 ./ocr-utils/components.h:280: 警告:'struct ocropus::ComponentConstructorNew' 有 虚函数但非虚析构函数 make[1]: * [glclass.o] 错误 1 ​​make: * [all-recursive] 错误 1

【问题讨论】:

    标签: compiler-construction ocr libpng


    【解决方案1】:

    根据OCRopus 上的文档,您可以试试:

    ./configure --with-tesseract=/usr/local
    

    【讨论】:

    • 谢谢!您的回答使我避免了该错误,但是现在当我使用 make 时,它​​会给出 make[1]: *** [glclass.o] Error 1 make: *** [all-recursive] Error 1
    • 我没有看到你的错误;您可以编辑您的问题并将其粘贴到您当前的文本下方吗?
    • 对不起,我无法理解那个错误。我建议您要么保留这个问题,要么针对该错误创建一个新问题,以便其他人可以帮助您。
    • 感谢您的努力!让我们看看是否有人在这里回答:)
    猜你喜欢
    • 2021-05-01
    • 1970-01-01
    • 2017-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多