2016-08-30 5 views

答えて

1

ここにbuild.gradleスクリプトのオリジナルの著者があります。おそらくあなたが言うことができるように、我々のgradleのビルドはかなり面倒です。

  1. gradleのネイティブ "cpp"プラグインを使用してHalideジェネレータを構築します。つまり、通常のC++プログラムです。
  2. アーキテクチャごとの引数で各Halideジェネレータを実行して、適切なjni/libs /ディレクトリに.soファイルのセットを生成します。
  3. ndk-buildスクリプトにシェルしてAndroid.mkをコンパイルします。これは、アプリケーションのJNI部分をHalide生成の.soファイルにリンクします。

このプロセスは脆弱です。特に、GradleとAndroidプラットフォームの両方が変更されています。私はプラットホームが新しいGradle Component Model that is still "incubating"New Android Build SystemNew Experimental Pluginと同様に安定するのを待っていました。

Android Studio 1.5とGradle 1.2.2を使用している場合は、その間にすべてのビルドが続行されます(1.2.3は動作するが、IIRC 1.2.4は壊れている)。

+0

私はチュートリアル[here](https://gradle.org/getting-started-native/)を使ってスクリプトのネイティブC++部分を構築しました。これはかなり古くなっています(Gradle 1.2.2のみ、コンポーネントモデルに移動しました)。 – stuyguy

+0

Android Studio 2.2がリリースされたら、コンポーネントモデルを[公式にサポートされているcmakeベースのネイティブビルド](http://tools.android.com/tech-docs/external-c-ビルド)。 – stuyguy

+0

私はもう別の問題があります。私はいくつかのインクルードが必要なコードを読んでいますが、フロントページからダウンロードしたバイナリファイルには必要なファイルがすべて含まれていません。例:LINK:致命的なエラーLNK1181:入力ファイル 'C:\\ workspace \\ Halide-master \\ apps \\ HelloAndroid /../../ bin.obj'を開くことができません :linkHalide_generatorExecutable FAILED – dspmihai

関連する問題