If you're writing in C, please refrain from depending on any type of dependency manager, or even worse, vendoring dependencies. I will shoot you if you do that.
The compiler's job is to check if all the required headers are there, if one is missing it'll throw an error.
It's the package maintainer's job to put the correct dependencies into the package that provides your program.
It's your job to list all the dependencies in a text file in your project, in the readme, or a file named INSTALLING or something like that. The package maintainer will read the file and put the right dependencies into the package specification.
If someone is building your program manually without using a package, it's their own job to install all the dependencies on their system.
GNU automake has a feature to track dependencies after your program has been built once, you can include the generated automake files in releases of your project, so that even if the user forgets to install a dependency, the configure script will throw an error even before any compiling takes place:
There are probably other more based tools than automake, can't think of any, I've always used it.
The user's OS already has a dependency manager, the OS's package manager. Don't reinvent the wheel with your own, inevitably shittier and less secure implementation.