Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Linux Tools Project/GCov/User Guide"

(Opening gcov result)
(Profiling Code Coverage)
Line 27: Line 27:
  
 
[[Image:LinuxToolsGcovProfilingTools.png]]
 
[[Image:LinuxToolsGcovProfilingTools.png]]
 +
 +
You can also specify the Gcov tool as the profiling tool of choice for Profile as...->Local C/C++ Application
 +
 +
[[Image:LinuxToolsProfileAsGcov.png]]
  
 
= Gcov main view  =
 
= Gcov main view  =

Revision as of 18:49, 27 May 2013

Overview

The Gcov plugin allows to visualize in eclipse gcov's output (aka *.gcda/*.gcno files).

For more details on gcov, visit the GNU GCov documentation at http://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/Gcov.html .

Installation and Set-Up

Gcov plugin depends on binutils (such as addr2line, c++filt and nm). Gcov can be used on any platform as soon as these binutils are in PATH. For example, you can use it on Windows with Cygwin.

First of all, the user has to compile the C/C++ program with profiling enabled using "-ftest-coverage -fprofile-arcs" options prior to running the tool. These two options must be passed via the project properties to both the compiler (C/C++ Build->Settings->Tool Settings->GCC C Compiler->Miscellaneous->Other flags) and the linker (C/C++ Build->Settings->Tool Settings->GCC C Linker->Miscellaneous->Linker flags). For a CDT Autotools project, there is a check-box found under the project properties (Autotools->Configure Settings->configure->Advanced->Gcov support).

Opening gcov result

Once the application is compiled and run is finished, several "gcno" and "gcda" files are generated under the project.


Gcov-project-explorer.png


Double clicking on one of these files will open a dialog to select the associated binary. The dialog allows you to display details only for the file that generated the associated "gcno"/"gcda" file or to display results for all "gcno"/"gcda" files which are part of source files used in a binary executable.

Gcov-binary-file.png

Profiling Code Coverage

Another way to bring up the gcov view is to profile your executable using Profiling Tools->Profile Code Coverage. This assumes that the executable has been set up to build with the proper compilation flags.

LinuxToolsGcovProfilingTools.png

You can also specify the Gcov tool as the profiling tool of choice for Profile as...->Local C/C++ Application

LinuxToolsProfileAsGcov.png

Gcov main view

The Gcov view displays an overview of coverage information for the whole project.

LinuxToolsGcovView.png


Several buttons are available in the toolbar.

  • Gprof-export-to-csv.gif : "Export to CSV" button allows you to export the gcov result as a CSV text file, suitable for any spreadsheet.
  • Gcov-sort-per-folder.gif : "Sort coverage per folder" button displays gcov result sorted by folder.
  • Gprof-sort-per-file.gif : "Sort coverage per file" button displays gcov result sorted by file.
  • Gprof-sort-per-function.gif : "Sort coverage per function" button displays gcov result sorted by function.
  • Gprof-birt-chart.gif : "Create Chart..." button allows you to create a BIRT chart, with the current lines selected in the gcov result view.


Double-clicking on a item in the result view will open the corresponding source location, annotated with coverage informations.

LinuxToolsGcovAnnotatedSource.png

Troubleshooting

If you encounter a problem with gcov plugin, please file a bug.

Back to the top