2017-05-05 47 views
1

我有一個C項目具有自己獨立的化妝鏈(又名外部版本) 平臺是Windows 7與Eclipse霓虹燈3.Eclipse的失敗調用的gcov和評估結果

對於項目我已經包括GTEST和每個源文件都有一個對應的Gtest_UnitTest.cc。 UnitTest自帶額外的生產鏈。 UnitTest和所有作品都像一個魅力。

現在我想包括覆蓋率報告。 我將-ftest-coverage -fprofile-arcs添加到編譯器標誌並將-lgcov添加到linke。 對於每個* .o編譯我得到* .gcno。運行構建exe後,我得到每個* .o a * .gcda。 我也在eclipse中獲得了一個不錯的gcov報告。

到目前爲止好!

不起作用的是代碼高亮。並且eclipse未能調用gcov來累積所有的gcda和gcno。 (有沒有可以讀取這種調用的調試控制檯的地方?) 如果我嘗試在eclipse中打開* .gcda或* .gcno,eclipse會詢問有關二進制報告的創建。 outputfolder

當我指定我的可執行文件時,出現錯誤,它不是ELF文件。 -_- eclipse有點挑剔,想要一個linux * .out文件? 當我通過命令行手動調用gcov時,我得到每個* .o a * .gcov結果文件。但我無法設法說服eclipse以任何方式使用它來突出(un)覆蓋的代碼行......我嘗試將一些生成的* gcov文件複製到與* .c文件相同的文件夾中。沒有魔法happend ...

也許它我的外部構建的結果(我將複製該項目,並嘗試一個內部版本以後)

也許它的源文件的分佈的結果如下: distribution of the source files 也許它在Eclipse中的錯誤,因爲我讀一些事情,但大多數的錯誤是從日食月神的時間......無法想象他們仍然不固定......

我到底做錯了什麼?

我已經閱讀了關於linux的lcov,但我的搜索沒有發現Windows的簡單解決方案... 有沒有我的使用案例的解決方案?

或者是最後的解決方案,並獲得視覺工作室?

相關的: Eclipse gcov missing highlighting in code No source code coverage color highlighting in eclipse-cpp-luna-SR1 for static library project

回答

1

我對這個更新:

最終的解決方案是很瑣碎,增加C/C++自動工具項目。 在導航器中,右鍵單擊項目的頂部節點 - >新建 - >轉換爲Autotools。

之後,需要重新定義構建選項。 (在我的情況下,使用外部構建鏈,通過轉換,現有的構建設置可能會丟失。) convert to autotools project

轉換後也會顯示構建樹。 一次構建項目,以便單元測試。exe文件的創建和配置配置文件配置 Profile Configuration

分析後的結果應該是這樣的: coverage result