There may be situations where we cannot solve a problem simply by reading and acting on warnings or error messages. Imagine a mysterious error, an untraceable error location, irresolvable references, or just unclear messages from classes or packages.
Locating the cause by the line number which LaTeX printed out or by knowing what we've done since the previous typesetting run, usually helps. Once a problematic line or chunk is located, it could be removed or fixed. Otherwise, it might become difficult.
Here are the general first steps we might go through then: