2016-09-17 5 views
0

Ich versuche, opencv zu kompilieren, aber es schlägt mit cvdef.h fehl: 314: 5: Fehler: '__fp16' nennt keinen Typ.opencv crosscompilation fehlgeschlagen mit __fp16 hat keinen Namen

Der Cross-Compiler verfügt über Hf-Unterstützung und die Erweiterung fp16.

... --enable-languages=c,c++ --with-cpu=cortex-a53 --with-fpu=vfpv3-fp16 --with-float=hard --with-pkgversion='crosstool-NG crosstool-ng-1.22.0' --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath ...

Ich habe versucht, zusätzliche Flaggen in der cmake-Datei festlegen:

set(GCC_COMPILER_VERSION "5.2.0" CACHE STRING "GCC Compiler version") set(GNU_MACHINE "arm-linux-gnueabihf" CACHE STRING "GNU compiler triple")

set(CMAKE_CXX_FLAGS " -mfloat-abi=hard -mfp16-format=ieee")
set(CMAKE_C_FLAGS " -mfloat-abi=hard -mfp16-format=ieee")

include("${CMAKE_CURRENT_LIST_DIR}/arm.toolchain.cmake")

Aber es sieht aus wie die Flaggen ignoriert wurden. Cmake Konfiguration Ausgang:

-- C++ flags (Release): -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-comment -fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections -fvisibility=hidden -fvisibility-inlines-hidden -O2 -DNDEBUG -DNDEBUG

thx für Ihre Hilfe.

Antwort

2

Dieses Problem wurde vor kurzem festgelegt: https://github.com/opencv/opencv/pull/7294

Bitte versuchen Sie den neuesten master-Zweig zu verwenden.

+0

Ich zog die neuesten Commit auf Master-Zweig und erlebte diesen Fehler. Dann bin ich genau zu dem Commit zurückgekehrt, das Sie hier angegeben haben, und alles hat funktioniert. Es ist erstaunlich, wie sie in der Lage sind, einen Fehler zu beheben und ihn dann in wenigen Tagen wieder einzuführen. – ancajic