device/hisilicon/bigfish/hippo/vendor/extlibs/sensor/multichip/sc7660tr.c:21: error: undefined reference to '__android_log_vprint'
时间: 2023-07-05 18:34:14 浏览: 100
这个错误是因为在你的代码中使用了 `__android_log_vprint` 这个函数,但是链接器找不到该函数的实现,所以导致了 undefined reference 错误。这个函数是 Android 系统提供的日志打印函数,需要链接 `liblog` 库才能正常使用。
你可以在 Android.mk 文件中添加以下代码来链接 `liblog` 库:
```
LOCAL_LDLIBS := -llog
```
或者在 CMakeLists.txt 文件中添加以下代码:
```
target_link_libraries(your_target_name log)
```
这样就可以解决 undefined reference 错误了。
相关问题
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语句。
这个错误的原因是,在函数中存在一些条件分支,但是在所有分支中都没有返回值的语句。编译器在编译时会对函数的返回值进行检查,如果存在这种情况,就会提示这个错误。
解决这个问题的方法是,在函数的所有分支中都添加上返回值的语句,或者在函数结尾处添加一个默认的返回语句,以确保函数总是能够返回一个值。
阅读全文