Покрытие кода NDK - PullRequest
       6

Покрытие кода NDK

0 голосов
/ 27 мая 2018

Кто-нибудь включал покрытие кода NDK на Android?

с помощью cmake с комментариями по этой ссылке покрытие кода для нативного кода с использованием Android NDK

Я закончилс той же ошибкой: set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --coverage -fprofile-arcs -ftest-coverage") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --coverage -fprofile-arcs -ftest-coverage") set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage -fprofile-arcs -ftest-coverage")

, поэтому я создаю новую ветку для решения этой проблемы.

1 Ответ

0 голосов
/ 10 июля 2018

«Та же ошибка» из другого потока:

[3/3] Связывание общей библиотеки CXX ../../../../build/intermediates/cmake/project/debug/obj/armeabi/libscanhwl_camif.so СБОЙ:: && / home / user / tools / android-ndk-r14b / toolchains / llvm / prebuilt / linux-x86_64 / bin / clang ++ --target = armv5te-none-linux-androideabi --gcc-toolchain = / home / user / tools / android-ndk-r14b / toolchains / arm-linux-androideabi-4.9 / prebuilt / linux-x86_64 --sysroot = / home / user / tools / android-ndk-r14b / sysroot -fPIC -isystem / home / user / tools / android-ndk-r14b / sysroot / usr / include / arm-linux-androideabi -D__ANDROID_API __ = 19 -g -DANDROID -функция-разделы -funwind-tables -fstack-защитник -no-canonical-prefixes -march = armv5te -mtune = xscale -msoft-float -fno-интегрированный-as -mthumb -Wa, - noexecstack -Wformat -Werror = формат-безопасность -D__STDC_FORMAT_MACROS -fexceptions -frtti --coverage -fprofile-arcs -ftest-покрытие -O0 -fno-limit-debug-info -Wl, - exclude-libs, libgcc.a -Wl, - exclude-libs, libatomic.a --sysroot / home /пользователь /tools / android-ndk-r14b / platform / android-19 / arch-arm -Wl, - build-id -Wl, - warn-shared-textrel -Wl, - фатальные предупреждения -Wl, - no-undefined -Wl, -z, noexecstack -Qunused-arguments -Wl, -z, relro -Wl, -z, теперь -shared -Wl, -soname, libscanhwl_camif.so -o -latomic -lm "/ home / user / tools/android-ndk-r14b/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/libgnustl_static.a "&&: out / stage2 / soong / ndk / sysroot / usr / include / string.h: 348: ошибка: неопределенная ссылка на «__strncpy_chk2» clang ++: ошибка: сбой команды компоновщика с кодом выхода 1 (используйте -v для просмотра вызова) ninja: сборка остановлена: подкоманда завершилась неудачно.

На первом этапе будет использоваться более новыйNDK (не уверен, что вы используете, другой человек использовал r14b, который является древним).Похоже, библиотека времени выполнения покрытия была построена на более новой версии Android, чем вы используете, и поэтому ее нельзя использовать в NDK.Если у вас такая же проблема в r17b, это ошибка NDK.

Обратите внимание, что покрытие - это не то, что мы действительно поддерживаем сейчас, но оно в моем списке задач: https://github.com/android-ndk/ndk/issues/612.

...