質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.60%

  • Android

    6411questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Tesseract

    29questions

    Tesseractは、Googleが提供しているオープンソースのOCRエンジンです。機械学習があり60以上の言語に対応でき、日本語の文字認識も可能です。さらに精度を上げることもできます。

tess-twoのndk-buildについて

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 598

.Won

score 37

私は、
tess-two   https://github.com/rmtheis/tess-two
の中のtess-twoというディレクトリの中にあるフォルダをビルドしたいです。
ndk-buildコマンドを使えば可能であるという風には分かったのですが、実行してみると「指定されたパスが見つかりません」と出ます。

jni/Android.mk は変更していないです

どのようにすれば成功できるでしょうか?

参考サイト

https://qiita.com/Nunocky/items/17df047a2a945d7a0a14
http://hyottokoaloha.hatenablog.com/entry/2016/03/24/095752
https://qiita.com/alingogo/items/0df5738d94af162356aa

追記

Error:Unable to start the daemon process.
This problem might be caused by incorrect configuration of the daemon.
For example, an unrecognized jvm option is used.
Please refer to the user guide chapter on the daemon at https://docs.gradle.org/3.3/userguide/gradle_daemon.html
Please read the following process output to find out more:
-----------------------
Error occurred during initialization of VM
Could not reserve enough space for 2097152KB object heap


というバグが発生しました
![イメージ説明]
これはなぜ起きてしまうのですか

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

+1

これまでの質問からはtess-twoのビルド済みライブラリーを利用したいだけのように思えるのですが、その場合はbuild.gradle(app)のdependenciesに

    compile 'com.rmtheis:tess-two:8.0.0'


を1行追加すれば事は済むように思えます。

NDKを用いるのは、このライブラリー自体を自分自身でビルドしたい目的になるかと思いますが、それをご所望されているのでしょうか?


どこまで作業できているのかわからないので、私の手元で確認できた手順を一通り記します。参考にされたページはいずれも古いようで、現在ではAndroid Studioを使ってビルドできる形で配布されています。

事前に、Android StudioのSDK ManagerのSDK Toolsタブの中にあるNDKをダウンロードしておきます。

次に、質問にも記されたgithubのページから'Clone or download'のボタンを押してDownload ZIPでプロジェクト全体をダウンロード。これを適当なところに展開すると、tess-two-masterというフォルダー付きで展開されます。Android Studioのスタート画面で'Open an existing Android Stduio project'を選択して、このフォルダーを指定してオープンします。

このとき、'Failed to find Build Tools revision 25.0.0'というエラーが出るかもしれませんが、その下にある'Install Build Tools 25.0.0 and sync project'というリンクをクリックすれば必要なものがダウンロードされてプロジェクトが開くところまで進むはずです。

上記のようなプロジェクトツリーが出たら、tess-twoをクリックしてハイライトさせた状態でメニューのBuild->Make module 'tess-two'を選択すれば、ndk-buildが用いられてビルドされます。右下にあるGradle Consoleというボタンをクリックすればコンソールビューが表示されて経過が見られます。

完了したら、下図のようにjniLibsフォルダーの下にビルドされたものが並ぶでしょう。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/10/16 20:07

    中にnativeメソッドがあり、それはコンパイルしないと動かないそうなので、コンパイル方法を調べています

    キャンセル

  • 2017/10/17 07:18

    丁寧な説明ありがとうございます
    試してみたいと思います

    キャンセル

  • 2017/10/24 17:38

    すみません。'Tess-two-master'をオープンしたのですが、

    Gradle 'tess-two-master' project refresh failed

    Error:Unable to start the daemon process.
    This problem might be caused by incorrect configuration of the daemon.
    For example, an unrecognized jvm option is used.
    Please refer to the user guide chapter on the daemon at https://docs.gradle.org/3.3/userguide/gradle_daemon.html
    Please read the following process output to find out more:
    -----------------------
    Error occurred during initialization of VM
    Could not reserve enough space for 2097152KB object heap

    というエラーが出ます。
    また、ファイル構造も違っています。
    どのようにすればよろしいですか

    キャンセル

  • 2017/10/24 18:37 編集

    確認しましたが、回答したときと今現在ダウンロードできるファイルは同一でした(バイナリーレベルの比較をしたので間違いないでしょう)。Android Studioのプロジェクトビューで、一番上のプロジェクト表示方法のリストが「Android」になっている場合、正常にプロジェクトをオープンしきった状態でないと表示が整理されないので、見え方も違ってしまいます。その辺の問題では。

    また、エラーになっているのは仮想マシンのメモリー不足みたいですが、私の環境では問題なく開けるので何でしょうね?
    https://qiita.com/keigodasu/items/ff6360f93132246b9ce2
    この辺を試して割り当てるヒープメモリーを増やしてみるしかないでしょうかね?

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.60%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Android

    6411questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Tesseract

    29questions

    Tesseractは、Googleが提供しているオープンソースのOCRエンジンです。機械学習があり60以上の言語に対応でき、日本語の文字認識も可能です。さらに精度を上げることもできます。