/sbinにadbdのような実行可能ファイルを生成しようとしています。
私が欲しい実行可能ファイルはARM形式のiwlistであり、タイプは静的です。
AndroidSourceCode / externalにフォルダーを追加し、「mm」コマンドを実行してコンパイルしました
LOCAL_PATH := $(call my-dir)
ifneq ($(TARGET_SIMULATOR),true)
include $(CLEAR_VARS)
LOCAL_MODULE := libiw
LOCAL_MODULE_TAGS := eng
LOCAL_SRC_FILES := iwlib.c
LOCAL_C_INCLUDE += LOCAL_PATH
LOCAL_PRELINK_MODULE := false
include $(BUILD_SHARED_LIBRARY)
#================================================
include $(CLEAR_VARS)
LOCAL_FORCE_STATIC_EXECUTABLE := true
LOCAL_MODULE_TAGS := eng
LOCAL_SRC_FILES := iwlist.c
LOCAL_SHARED_LIBRARIES := libiw
LOCAL_MODULE := iwlist
include $(BUILD_EXECUTABLE)
#================================================
endif # !TARGET_SIMULATOR
上記のmakeファイルは、実際には次のコマンドでiwlist実行可能ファイルを生成することで機能します。
iwlist: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses
shared libs), stripped
ただし、「静的にリンクされている」を探しており、「LOCAL_FORCE_STATIC_EXECUTABLE:= true」と考えていました。この行は、この実行可能ファイルを静的に作成するのに役立ちます。
残念ながら、そうではありません。
あなたがそれをする方法を知っているならば、親切に私に教えてください。
前もって感謝します。