Я работаю с приложением Android (APK), которое использует JNI и зависит от общей библиотеки. Я изменил параметры сборки, чтобы включить приборы покрытия кода. After running the APK on an Android device and pulling the .profraw files from the device, I merged them into a .profdata file using llvm-profdata merge.
However, I am unable to generate code coverage reports in HTML format because the llvm-cov tool requires an executable file as input, but my target is Общая библиотека (
файл). Поскольку .llvm-cov не может принять общую библиотеку в качестве ввода непосредственно, я ищу способ использовать файл .so или некоторый обходной путь для анализа данных охвата. Я также попытался связать общую библиотеку с небольшой исполняемой программой и запустить ее локально, но моя цель - избежать создания дополнительного исполняемого файла с единственной целью создания отчетов о покрытии. < /P>
Код: Выделить всё
➜ test llvm-cov show --instr-profile default.profdata libmap-render.so
warning: libmap-render.so: profile data may be out of date - object is newer
error: libmap-render.so: Failed to load coverage: No coverage data found
Я ожидал, что можно либо:
- Используйте файл .so непосредственно с LLVM-cov .
- Найдите метод, чтобы связать общую библиотеку в отчет о том, что нужно, чтобы он был подготовлен, чтобы (по-прежнему исполняет, чтобы (по-видимому, не нужно. />
Решение, которое я ищу, должно позволить мне генерировать отчет о покрытии HTML без необходимости создавать новый исполняемый файл из файла .so , так как у меня уже есть .profraw
Подробнее здесь:
https://stackoverflow.com/questions/797 ... hout-using