Google の光学認識プログラムである OCR 0.4 をコンパイルしようとしています。
readme ファイルに書かれているように、次のことを行う必要があります。
1) これらのパッケージがインストールされていることを確認してください (現在の Ubuntu/Debian バージョンで動作するはずです): libpng (ヘッダー付き) libjpeg (ヘッダー付き) libtiff (ヘッダー付き)
2) http://code.google.com/p/iulibから iulib をインストールします。
3) Subversion リポジトリ (http://code.google.com/p/tesseract-ocr) から最新バージョンの tesseract をインストールします。
4) リリース ディレクトリから、./configure make sudo make install を実行します。
上記のすべてのパッセージを実行した後、コマンドラインに「./configure」と入力すると、次のエラーが発生します。
/usr/include/tesseract/baseapi.h をチェックしています...構成がありません: エラー: tesseract が見つかりませんでした! 使用しない場合は --without-tesseract を選択するか、 --with-tesseract= でインストール パスを指定します。
これまでにこれを解決しようとしたのは、入力"which tesseract"
して取得したtesseractパスを指定してコンパイルしようとすることです
/usr/local/bin/tesseract
そのため、入力./configure --with-tesseract=/usr/local/bin/tesseract
したところ、同じ同じエラーが発生しました。
なぜ私はこれを手に入れたのですか?
前もって感謝します
編集 - 以下の回答に記載されている方法を使用した後、次のエラーが発生します。
Localhost:ocropus giorgio$ make all in . g++ -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_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_UNIST_HATLO =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_LIBTESSERACT_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_STRCHR=1 -DHAVE_STRDUP=1 -DHAVE_STRRCHR =1 -I. -I./include -I.
test -f './ocr-line/glclass.cc' || echo './'
./ocr-line/glclass.cc ./ocr-line/glclass.cc:5 から ./include/glinerec.h:57 からインクルードされたファイル: ./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: 警告: 'struct ocropus::IComponentConstructor' には仮想関数がありますが、非仮想デストラクタ /usr/local/include/colib/narray.h: In member function 'colib::narray& colib::narray::truncate(int) [with T = char]': . /ocr-utils/narray-binio.h:48: ここからインスタンス化 /usr/local/include/colib/narray.h:261: 警告: 非 void を返す関数に return ステートメントがありません /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 を返す関数に return ステートメントがありません /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: 警告: '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: 警告: 'struct 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: 警告: '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: 警告: 'struct 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: 警告: '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: 警告: 'struct 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:ComponentConstructorNew には仮想関数がありますが、仮想デストラクタではありません。 (const char*, bool) [with T = glinerec::BitNN]' ./ocr-line/glclass.cc:1799: ここからインスタンス化 ./ocr-utils/components.h:280: 警告: 'struct ocropus: :ComponentConstructorNew' には仮想関数がありますが、仮想デストラクタではありません。 component_register(const char*, bool) [with T = glinerec::AutoMlpClassifier]' ./ocr-line/glclass.cc:1801:ComponentConstructorNew には仮想関数がありますが、仮想デストラクタではありません。 (const char*, bool) [with T = glinerec::BitNN]' ./ocr-line/glclass.cc:1799: ここからインスタンス化 ./ocr-utils/components.h:280: 警告: 'struct ocropus: :ComponentConstructorNew' には仮想関数がありますが、仮想デストラクタではありません。 component_register(const char*, bool) [with T = glinerec::AutoMlpClassifier]' ./ocr-line/glclass.cc:1801:「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: 警告: 'struct 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:「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: 警告: 'struct 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: 警告: 'struct 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: 警告: 'struct 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: 警告: '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-ライン/glclass.cc:1802:
ここからインスタンス化された ./ocr-utils/components.h:286: 警告: '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: 警告: 'struct 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: 警告: 'struct 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]: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]: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