jni编译问题:jin中添加LOG方法以及undefined reference to `__android_log_print'错误
2016-01-15 11:38
856 查看
注意android.mk 里有一行include $(CLEAR_VARS)
必须把LOCAL_LDLIBS :=-llog放在它后面才有用,否则相当于没写
添加方法:
Android.mk里:
LOCAL_PATH := $(call my-dir) //它用于在开发tree中查找源文件
include $(CLEAR_VARS) //负责清理很多LOCAL_xxx
LOCAL_MODULE := hello //表示Android.mk中的每一个模块
LOCAL_SRC_FILES := hello.c //包含将要打包如模块的C/C++ 源码
LOCAL_LDLIBS += -llog //附加log日志库,必须放在include $(CLEAR_VARS)后面
include $(BUILD_SHARED_LIBRARY) //决定编译为BUILD_STATIC_LIBRARY(静态库),BUILD_SHARED_LIBRARY (动态库 )
hello.c里:
// jni中打印log的宏 需要在Android.mk文件中添加LOCAL_LDLIBS += -llog
#include <android/log.h>
#define LOG_TAG "System.out"
#define LOGD(...)__android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)
#define LOGI(...)__android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
必须把LOCAL_LDLIBS :=-llog放在它后面才有用,否则相当于没写
添加方法:
Android.mk里:
LOCAL_PATH := $(call my-dir) //它用于在开发tree中查找源文件
include $(CLEAR_VARS) //负责清理很多LOCAL_xxx
LOCAL_MODULE := hello //表示Android.mk中的每一个模块
LOCAL_SRC_FILES := hello.c //包含将要打包如模块的C/C++ 源码
LOCAL_LDLIBS += -llog //附加log日志库,必须放在include $(CLEAR_VARS)后面
include $(BUILD_SHARED_LIBRARY) //决定编译为BUILD_STATIC_LIBRARY(静态库),BUILD_SHARED_LIBRARY (动态库 )
hello.c里:
// jni中打印log的宏 需要在Android.mk文件中添加LOCAL_LDLIBS += -llog
#include <android/log.h>
#define LOG_TAG "System.out"
#define LOGD(...)__android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)
#define LOGI(...)__android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)
相关文章推荐
- Android开发路线图
- 修改Android EditText光标颜色
- 【转】Android应用程序常见问题
- Android任务和返回栈完全解析(转)
- Android之日期及时间选择对话框
- 简单定制Android控件(3) - 打造通用的PopupWindow(一)
- Android高效率编码-第三方SDK详解系列(一)——百度地图,绘制,覆盖物,导航,定位,细腻分解!
- Android 布局优化之include与merge
- Android中attrs.xml文件的使用详解
- Android drivers/switch驱动详解(用于通过GPIO状态检测耳机、HDMI等的插拔状态)
- Android 支付宝支付开发
- android 应用的生命周期
- Android activity之间传值关键性代码
- Android手机 Fildder真机抓包
- Android开发之如何监听让服务不被杀死(service+broadcast)
- Android应用开发中的风格和主题(style,themes)
- android EditText Border 点击和点击状态的选择 shape 进行绘制
- 解决Android从相册中获取图片出错图片却无法裁剪问题的方法
- Android开发笔记(四十九)异步任务处理AsyncTask
- Android通过webservice对sqlserver数据库进行操作