最終更新:2019-09-24 (火) 14:34:59 (1838d)
Android.mk
Top / Android.mk
<project>/jni/Android.mk
- にあり、ファイルやライブラリの情報を定義
http://developer.android.com/ndk/guides/android_mk.html
基本情報
LOCAL_PATH パスを指定(最初に定義しなければならない) include $(CLEAR_VARS) LOCAL_PATH以外のLOCAL_で始まる定義をクリア LOCAL_MODULE 生成されるモジュール名 LOCAL_SRC_FILES モジュールの元となるソースコードを指定 include $(BUILD_SHARED_LIBRARY) 共有ライブラリ作成を指示
内容
- ソースコード、モジュール名、ライブラリなどの依存関係
Android.mk/変数
インクルード変数
include $(CLEAR_VARS) LOCAL_PATH以外のLOCAL_で始まる定義をクリア include $(BUILD_SHARED_LIBRARY) 共有ライブラリ作成を指示 include $(BUILD_STATIC_LIBRARY) 静的ライブラリ作成を指示 include $(BUILD_EXECUTABLE) 実行ファイル作成を指示
ターゲット情報変数
- TARGET_ARCH?
- TARGET_PLATFORM
- TARGET_ARCH_ABI?
- TARGET_ABI?
モジュール記述変数
LOCAL_PATH パスを指定(最初に定義しなければならない) LOCAL_MODULE 生成されるモジュール名 LOCAL_MODULE_FILENAME? ビルドシステムがデフォルトで付ける名前をオーバーライド LOCAL_SRC_FILES モジュールの元となるソースコードを指定 LOCAL_CPP_EXTENSION? C++の拡張子を指定 LOCAL_CPP_FEATURES? コードが特定の C++ 機能に依存していることを示す LOCAL_C_INCLUDES Cのインクルードファイルのパスを指定する LOCAL_CFLAGS CとC++のソースコードをビルドする際のオプションを指定する LOCAL_CPPFLAGS? C++のソースコードをビルドする際のオプションを指定する LOCAL_STATIC_LIBRARIES リンクする静的ライブラリを指定。(BUILD_STATIC_LIBRARYで指定したモジュール) LOCAL_SHARED_LIBRARIES リンクする共有ライブラリを指定 LOCAL_LDLIBS リンカに渡すオプション LOCAL_LDFLAGS LOCAL_ALLOW_UNDEFINED_SYMBOLS? LOCAL_ARM_MODE LOCAL_ARM_NEON? LOCAL_DISABLE_FORMAT_STRING_CHECKS? LOCAL_EXPORT_CFLAGS? LOCAL_EXPORT_CPPFLAGS? LOCAL_EXPORT_C_INCLUDES? LOCAL_EXPORT_LDFLAGS? LOCAL_EXPORT_LDLIBS? LOCAL_SHORT_COMMANDS? LOCAL_THIN_ARCHIVE? LOCAL_FILTER_ASM? LOCAL_PRELINK_MODULE?
Android.mk/関数
Android NDK
LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := hello LOCAL_SRC_FILES := hello.cpp include $(BUILD_SHARED_LIBRARY)
OpenCV/Android
include $(CLEAR_VARS) # OpenCV OPENCV_CAMERA_MODULES:=on OPENCV_INSTALL_MODULES:=on include ../../sdk/native/jni/OpenCV.mk
メモ
- ビルド時にMakefileに一部として取り込まれる
関連
- Application.mk (オプション)
- Android/ソースコード