1. ホーム
  2. android

[解決済み] 未定義の `__android_log_print' への参照

2022-11-14 10:57:01

質問

私の make ファイルはどうなっているのでしょうか?

Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE    := foo
LOCAL_SRC_FILES := foo.c
LOCAL_EXPORT_LDLIBS := -llog
include $(BUILD_SHARED_LIBRARY)

foo.c

#include <string.h>
#include <jni.h>
#include <android/log.h>

#define  LOG_TAG    "foo"
#define  LOGI(...)  __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)

void test() {
    LOGI("test");
}

ndk-build(ビルド

foo.c:9: undefined reference to `__android_log_print'

どのように解決するのですか?

以下のように Android.mk ファイルに記述してください。

LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog