本文介绍了未定义的参考`__android_log_print“的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

什么是错我的make文件?

Android.mk

  LOCAL_PATH:= $(叫我-DIR)

包括$(CLEAR_VARS)
LOCAL_MODULE:= FOO
LOCAL_SRC_FILES:= foo.c的
LOCAL_EXPORT_LDLIBS:= -llog
包括$(BUILD_SHARED_LIBRARY)
 

foo.c的

 的#include< string.h中>
#包括< jni.h>
#包括<安卓/ log.h>

#定义LOG_TAG富
#定义LOGI(...)__android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)

无效测试(){
    LOGI(测试);
}
 

NDK建造

  foo.c的:9:未定义参考`__android_log_print
 

解决方案

尝试在你的 Android.mk 文件如下:

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

What is wrong with my make file?

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'
解决方案

Try the following in your Android.mk file:

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

这篇关于未定义的参考`__android_log_print“的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-15 16:35