Why can't I include a library in another one?
Nested includes lead to these convoluted error messages and are in general, a PITA for the next reader to follow &amp; understand. It is better practice for the dependent library to test, at compile time, for the existence of its required libraries and for each one found missing, issue: 

#error DepLibe.h: Missing required include file ReqLibe.h


Most .h files guard against multiple-inclusion by

#ifndef _REQLIBE_H_
#define _REQLIBE_H_
// library definitions here


or some variant of it. DepLibe.h can test for these guard symbols. DepLibe.h should document the dependencies in prominent comments.