device/hisilicon/bigfish/hippo/vendor/extlibs/sensor/multichip/sc7660tr.c:21: error: undefined reference to '__android_log_vprint'
时间: 2023-08-16 11:05:42 浏览: 142
这个错误是因为在该文件中使用了 Android 系统的日志函数,但编译器找不到该函数的实现。通常情况下,需要在编译时链接 Android 系统的日志库 liblog.so 才能解决这个问题。
你可以检查以下问题:
1. 确认是否已经包含了 Android 系统日志库的头文件 android/log.h。
2. 确认是否已经链接了 Android 系统日志库 liblog.so。可以在 Android.mk 中添加 LOCAL_LDLIBS += -llog 来链接该库。
3. 如果还是无法解决问题,可以尝试在编译命令中手动链接该库,例如:gcc -o myapp myapp.c -llog。
希望这些信息能帮到你。
相关问题
device/hisilicon/bigfish/hippo/include/hi_mw_log.h:77:53: note: expanded from macro 'LOGI' #define LOGI(...) ((void)LOG(ATV_LOG_INFO, LOG_TAG, __VA_ARGS__)) ^~~~~~~~~~~ device/hisilicon/bigfish/hippo/include/hi_mw_log.h:122:33: note: expanded from macro 'LOG' atv_printLog(priority, tag, __VA_ARGS__) ^~~~~~~~~~~ device/hisilicon/bigfish/hippo/include/hi_mw_log.h:131:56: note: expanded from macro 'atv_printLog' HiLog::PrintLog(prio, tag, __FUNCTION__, __LINE__, fmt) ^~~ device/hisilicon/bigfish/hippo/vendor/ZYCustom/modules/Orientation.cpp:319:14: warning: expression result unused [-Wunused-value] for(i;i<=sizeof(accelerations_mean_array)/sizeof(accelerations_mean_array[0]);i++){ ^ device/hisilicon/bigfish/hippo/vendor/ZYCustom/modules/Orientation.cpp:319:17: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare] for(i;i<=sizeof(accelerations_mean_array)/sizeof(accelerations_mean_array[0]);i++){ ~^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ device/hisilicon/bigfish/hippo/vendor/ZYCustom/modules/Orientation.cpp:337:1: error: control may reach end of non-void function [-Werror,-Wreturn-type]
这是一段代码的编译警告和错误信息。
首先是一个宏定义,展开后是打印Log信息的函数调用,其中第一个参数是Log的等级,第二个参数是Log的Tag,后面的__VA_ARGS__是可变参数,表示需要打印的Log信息。
接下来是一个for循环,其中i的类型为int,在循环条件中使用了sizeof操作符获取数组长度,需要注意sizeof的返回值类型是unsigned int,导致了类型不匹配,编译器给出了警告。
最后是一个函数定义,编译器提示该函数可能没有返回值,需要加上返回值或者在函数结尾加上return语句。
device/hisilicon/bigfish/hippo/vendor/ZYCustom/modules/Orientation.cpp:337:1: error: control may reach end of non-void function [-Werror,-Wreturn-type] } ^
这是一段编译错误信息,提示在一个非void函数中存在没有返回值的可能性,需要在函数结尾处添加return语句。
这个错误的原因是,在函数中存在一些条件分支,但是在所有分支中都没有返回值的语句。编译器在编译时会对函数的返回值进行检查,如果存在这种情况,就会提示这个错误。
解决这个问题的方法是,在函数的所有分支中都添加上返回值的语句,或者在函数结尾处添加一个默认的返回语句,以确保函数总是能够返回一个值。
阅读全文