5 ms·
We're talking about build dependencies, not runtime dependencies. A build dependency is - by definition - one that is touched during the build process. strace
by justinsb 16y ago
We're talking about build dependencies, not runtime dependencies. A build dependency is - by definition - one that is touched during the build process. strace exactly identifies that set.
- unshift 16y agoi 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?
- justinsb 16y agoYou strace the build steps (gcc bar.c), not the output program
- burgerbrain 16y agoThis reminds me a lot of CDE Pack, can you explain how this is different? If my program needs to be dynamically linked with, say, OpenSSL, but rarely actually uses it, how does introducing strace into this situation help?
- Vitaly 16y agoyou don't care about a dependencies of an non-existing target. you have to run it anyway. and once you run it at least once you will have the full set of its dependencies for the next time you run your build.