Some issues and possible solutions:
Confusion of source and build directory You are typically in the source directory to make changes to the files and in the build directory to enter the build commands and run/test the program.
Solutions:
cdargs
Difficulty entering commands Some commands have tricky, and hard-to-remember, commands. Some commands were simple, but the arguments were complicated, e.g., complicated file paths.
Solutions:
Messing everything up Someone on the team already made the needed commit, but you have it committed locally. Or, you accidentally created an in-source build with cmake.
Solutions:
Not getting expected results You are using the commands, but they aren't working right. Perhaps a file is missing. Chances are, it did not get generated.
Solutions:
Not carefully reading the instructions For example, "the command line for the compile up to the first argument after the –coverage". A command line is a single line, not all of this. The entire command line for that problem is:
And the solution is something like:
Not realizing that software development tools give us lots of data So when looking for code coverage, the commands may give us code coverage data for many other things that we have no control over and don't care about, e.g., stl_algo.h. The ability to focus on what's important is essential.
Solutions:
grep
is essential.Not understanding that commands do not always repeat exactly Commands can fail. Compilers can crash. There could be file system or memory errors. There can be network errors.
Solutions: