我的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-内部版本
foo.c:9: undefined reference to `__android_log_print'
发布于 2010-12-16 07:29:23
在Android.mk
文件中尝试执行以下操作:
LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -llog
发布于 2011-01-31 13:46:33
您需要添加
LOCAL_LDLIBS := -llog
转到Android.mk
发布于 2014-12-04 22:58:37
如果你使用Android Studio和gradle,它会忽略Android.mk。将以下内容添加到您的build.gradle文件:
android {
defaultConfig {
ndk {
moduleName "your_module_name"
ldLibs "log"
}
}
}
https://stackoverflow.com/questions/4455941
复制相似问题