Tweak missingInclude messages. Users should normally use --library for system includes and -I for local headers. by danmar · Pull Request #4850 · cppcheck-opensource/cppcheck
I think we should add a small additional paragraph about what --library is trying to achieve to README.md. Detailing this is used to provide information about certain interfaces without need to providing the headers so so can properly analyze only your code base. Should also have a mention of --debug-warnings and --check-library (though this should get an asterisk since it still has too many false positives) about detecting gaps in that similar to the missingInclude warning. And also that user can provide their own library files for custom libraries - with an hint at submitting those to the project.
This would also go along with https://trac.cppcheck.net/ticket/11287. If we know which header belongs to which library we can suggest the actual library in the message. And in case we do the automatic detection we only need to provide the missingIncludeSystem warning if it is not covered by any library thus increasing the detection coverage.
The message you are changing should say something like (paraphrased and verbose):
Cppcheck does not need system header for analysis. Having more information will help to provide more accurate results. Please specify a --library instead. Refer the --library documentation for more infomration.