天天看點

GCov交叉編譯覆寫率測試要點

  1. 多源檔案的工程,每個用使用了-fprofile-arcs編譯的源檔案,都會生成一個擴充名為’.gcno’的檔案,這個是用于生成’.gcda’的重要參考檔案,需要安裝到目标系統中;
  2. 在目标系統中,執行覆寫率測試時,生成’.gcda’的預設路徑與源檔案的編譯路徑相同,在這種情況下,目标系統通常沒有編譯環境的完整路徑,生成過程會失敗。這是個重要的設計,為了確定不會因為重名導緻’.gcda’被覆寫,是以需要設計gcov工作的環境變量;
  3. gcov的環境變量有2個:GCOV_PREFIX和GCOV_PREFIX_STRIP;
  4. GCOV_PREFIX設定’.gcda’生成的根目錄,寫權限;
  5. GCOV_PREFIX_STRIP是一個整數,用于設定有源代碼目錄樹中,有幾級目錄需要被裁剪掉,舉例說明:

    源代碼中有:

設定環境變量為

則生成的’gcda’位于:

繼續閱讀