Android開発実践のndkコンパイルコマンドの簡単な例


前言
Androidは、関連するクロスコンパイル環境とツールチェーンを構成しています。いくつかの簡単な作成が必要です。mkファイルはAndroidのjavaプロジェクト/Android携帯電話で識別、ロード、実行するライブラリまたはアプリケーションプログラムにコンパイルできます。
デフォルトでは、NDKを使用してc/c+コードをコンパイルし、このコードを任意のAndroidアプリケーションプロジェクトのjniディレクトリに配置し、その後、対応するAndroid.mkファイルを作成し、ndk-buildコマンドを実行してコンパイルを完了する必要があります。実際には、任意のディレクトリでnativeコードをコンパイルすることもできます。ndk-buildコマンドの後に対応するコマンドラインパラメータを追加するだけでいいです。ここではよく使われているndk-buildコマンドラインのパラメータを提供します。皆さんが柔軟にNDKを使って自分のnativeコードをコンパイルすることができます。
ndk-buildコマンドラインパラメータ
1、ndk-build NDK_LOG=1LOGレベルを設定するために、ndkコンパイル時の詳細出力情報を印刷します。
2、ndk-build NDK_PROJECT_PATH=.NDKコンパイルのコードパスを現在のディレクトリとして指定します。配置しないと、プロジェクトコードをAndroidプロジェクトのjniディレクトリに入れなければなりません。
3、ndk-build APP_BUILD_SCRIPT=./Android.mkNDKコンパイルで使用するAndroid.mkファイルを指定します。
4、ndk-build NDK_APPLICATION_MK=./Application.mkNDKコンパイルで使用するappration.mkファイルを指定します。
5、ndk-build cleanすべてのコンパイルされた一時ファイルとターゲットファイルをクリアします。
6、ndk-build -B強制的に再コンパイルしたコードをコンパイルします。
7、ndk-build NDK_DEBUG=1debug buildを実行します
8、ndk-build NDK_DEBUG=0release buildを実行します
9、ndk-build NDK_OUT=./mydir作成したファイルをコンパイルする場所を指定します。
10、ndk-build -C /opt/myTest/指定ディレクトリへのnativeコードのコンパイル
例:
作成.cファイル
もしあなたが~mathディレクトリの下でmath.cファイルを作成したとしたら、その内容は以下の通りです。

#include <stdio.h>
int add( int a , int b ) {
return a+b;
}
Android.mkファイルの作成内容は以下の通りです。

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := dmath
LOCAL_SRC_FILES := math.c
include $(BUILD_SHARED_LIBRARY)
~/mathディレクトリの下でndk-buildコマンドを実行します。パラメータは以下の通りです。

$ ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk
または:

ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=./Android.mk NDK_APPLICATION_MK=./Application.mk
NDK_PROJECT_PATHはコンパイルが必要なコードの工程カタログを指定しています。ここでは現在のディレクトリ、APP_を提供しています。BUILD_SCRIPTはAndroid makefileファイルのパスを提供しています。もちろん、Apple.mkファイルがあれば、NDK_APP_APPLICATION_MK=./Application.mkを追加することができます。ndk-buildコマンドを実行したら、現在のディレクトリの下に、Objとlibsフォルダが作成されています。このようにして、libdmart.soダイナミックライブラリはすでに作成済みです。libs/armeabiディレクトリの下にあります。
締め括りをつける
以上はこの文章の全部の内容です。本文の内容は皆さんの学習や仕事に一定の助けをもたらすことを望んでいます。もし疑問があれば、メッセージを残して交流してください。ありがとうございます。