opencv交叉编译失败,__fp16未命名类型

opencv crosscompilation failed with __fp16 does not name type

本文关键字:fp16 类型 未命名 交叉编译 失败 opencv      更新时间:2023-10-16

我试图交叉编译opencv,但它与cvdef一起失败。h:314:5:错误:'__fp16'没有命名类型。

交叉编译器支持hf和fp16扩展。

--启用语言=c,c++--使用cpu=cortex-a53--带fpu=vfpv3-fp16--带float=hard--带pkgversion="crosstol-NG crosstol-NG-1.22.0"--启用-_cxa_atexit--禁用libmudflate--禁用libgomp--禁用libssp--禁用libquadmath。。。

我试图在cmake文件中设置额外的标志:

set(GCC_COMPILER_VERSION"5.2.0"CACHE STRING"GCC编译器版本"(set(GNU_MACHINE(arm linux gneabihf"CACHE STRING"GNU编译器三"(

设置(CMAKE_CXX_FLAGS"-mfloat abi=hard-mfp16 format=ieee"(
设置(CMAKE_C_FLAGS"-mfloat abi=hard-mfp16 format=ieee"(

include("${CMAKE_CURRENT_LIST_DIR}/arm.toolchain.CMAKE"(

但这些旗帜似乎被忽视了。cmake配置输出:

--C++标志(发行版(:-fsigned char-W-Wall-Werror=返回类型-Werror=non-virtual dtor-Verror=address-Verror=序列点-Wformat-Werr=格式安全-Wmissing声明-Wundef-Winit self-Wpointer arith-Wshadow-Wsign promo-Wno缩小-Wno删除非虚拟dtor-Wno注释-fdiagnostics show option-ppthread-fomit帧指针-ffunction sections-fvisibility=hidden-fvisibility内联hidden-O2-DNDEBUG-DNDEBUG

谢谢你的帮助。

此问题最近已修复:https://github.com/opencv/opencv/pull/7294

请尝试使用最新的master分支。