i don't see how... if my code requires foo.h and bar.c, but those get compiled and linked into one executable. how will running that program expose that?
moreover, how can you run strace to figure out dependencies on a program that hasn't been built yet? how does it determine when new dependencies are added?