device/hisilicon/bigfish/hippo/vendor/extlibs/sensor/multichip/sc7660tr.c:21: error: undefined reference to '__android_log_vprint'
时间: 2023-07-06 08:37:40 浏览: 72
这个错误是由于您调用了Android NDK 中的log库函数,但是您的程序没有正确地链接到该库。您需要在Android.mk文件中正确地声明该库,并在C/C++代码中包含头文件。您可以尝试添加以下行到您的Android.mk文件中:
```
LOCAL_LDLIBS += -llog
```
并在您的C/C++代码中添加以下头文件:
```
#include <android/log.h>
```
这应该能够解决您的问题。
相关问题
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语句。
这个错误的原因是,在函数中存在一些条件分支,但是在所有分支中都没有返回值的语句。编译器在编译时会对函数的返回值进行检查,如果存在这种情况,就会提示这个错误。
解决这个问题的方法是,在函数的所有分支中都添加上返回值的语句,或者在函数结尾处添加一个默认的返回语句,以确保函数总是能够返回一个值。
阅读全文