Flutter运行失败::iris_method_channel:buildCMakeDebug[arm64-v8a]任务出错
无法运行Flutter应用:iris_method_channel编译失败
基本信息
- 依赖关系:iris_method_channel 是
agora_rtc_engine的间接依赖 - 当前依赖版本:
agora_rtc_engine: ^6.1.1 - 已尝试操作:更新Flutter版本,问题未解决
完整错误日志
FAILURE: Build failed with an exception. * 出错原因: 任务':iris_method_channel:buildCMakeDebug[arm64-v8a]'执行失败。 > com.android.ide.common.process.ProcessException: ninja: 进入目录 `/home/muhammad/.pub-cache/hosted/pub.dev/iris_method_channel-1.1.0-rc.5/android/.cxx/Debug/2i83q535/arm64-v8a' [1/2] 编译CXX对象 CMakeFiles/iris_method_channel.dir/iris_event.cc.o FAILED: CMakeFiles/iris_method_channel.dir/iris_event.cc.o /home/muhammad/Android/Sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ --target=aarch64-none-linux-android21 --gcc-toolchain=/home/muhammad/Android/Sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64 --sysroot=/home/muhammad/Android/Sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot -DDART_SHARED_LIB -Diris_method_channel_EXPORTS -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -MD -MT CMakeFiles/iris_method_channel.dir/iris_event.cc.o -MF CMakeFiles/iris_method_channel.dir/iris_event.cc.o.d -o CMakeFiles/iris_method_channel.dir/iris_event.cc.o -c /home/muhammad/.pub-cache/hosted/pub.dev/iris_method_channel-1.1.0-rc.5/src/iris_event.cc 从/home/muhammad/.pub-cache/hosted/pub.dev/iris_method_channel-1.1.0-rc.5/src/iris_event.cc:6引入的文件中: /snap/flutter/current/usr/include/c++/9/memory:121:25: 错误:指针转换为更小类型'uintptr_t'(即'unsigned int')时丢失信息 const auto __intptr = reinterpret_cast<uintptr_t>(__ptr); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /home/muhammad/.pub-cache/hosted/pub.dev/iris_method_channel-1.1.0-rc.5/src/iris_event.cc:90:17: 错误:使用未声明的标识符'memcpy';是否指'wmemcpy'? memcpy(abuffer, obuffer, abufferLength); ^~~~~~ wmemcpy /home/muhammad/Android/Sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/wchar.h:262:17: 注意:'wmemcpy'在此处声明 extern wchar_t *wmemcpy (wchar_t *__restrict __s1, ^ /home/muhammad/.pub-cache/hosted/pub.dev/iris_method_channel-1.1.0-rc.5/src/iris_event.cc:90:24: 错误:无法用uint8_t*(即'unsigned char*')类型的左值初始化wchar_t*类型的参数 memcpy(abuffer, obuffer, abufferLength); ^~~~~~~ /home/muhammad/Android/Sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/wchar.h:262:46: 注意:此处正在向参数'__s1'传递实参 extern wchar_t *wmemcpy (wchar_t *__restrict __s1, ^ 生成3个错误。 ninja: 构建停止:子命令失败。 C++构建系统[build]执行以下命令时失败: /home/muhammad/Android/Sdk/cmake/3.18.1/bin/ninja \ -C \ /home/muhammad/.pub-cache/hosted/pub.dev/iris_method_channel-1.1.0-rc.5/android/.cxx/Debug/2i83q535/arm64-v8a \ iris_method_channel 路径:/home/muhammad/.pub-cache/hosted/pub.dev/iris_method_channel-1.1.0-rc.5/android * 建议尝试: > 使用--stacktrace选项获取堆栈跟踪。 > 使用--info或--debug选项获取更多日志输出。 > 使用--scan选项获取完整分析信息。 BUILD FAILED in 2m 18s Exception: Gradle任务assembleDebug执行失败,退出码1
关键错误点
- C++标准库
memory头文件中,指针转换为uintptr_t类型时丢失信息 iris_event.cc文件中未声明memcpy标识符,编译器误匹配到wmemcpy,但参数类型(uint8_t*与wchar_t*)不兼容
内容的提问来源于stack exchange,提问作者Muhammad Ibrahim
相关产品推荐
相关产品推荐

