«
And this is why we have prebinding...
»
I thought it would be interesting to see some Mach-O dependency graphs, so I whipped up a quick Python script to generate GraphViz output using my macholib module. These graphs are built using only the LC_LOAD_DYLIB command. If I were to include the LC_PREBOUND_DYLIB command, they get a whole order of magnitude uglier. Now you can see why it's a good idea to have lazy loading of symbols and prebinding, at least when you link to Foundation!
- /bin/ls
- /usr/bin/python
- /Applications/Mail.app/Contents/MacOS/Mail (this is truly obscene, you have been warned)