I am using XCode and the command line tools and linking against the .tbd stub libraries in the SDK. But to do it I had to specify the path to the stub files Why?
since the path to the stub files does not lie along the standard shared library search path automatically. What happens when you try to compile without specifying that path? What error message do you get? What does your compile command look like?
What I'm worried about, and it's probably nothing to worry about Don't you think that if there was a problem, someone would have noticed it by now?
I'm guessing when ld builds an executable and you use -lc to tell ld to link against the c standard library, the path to the library is not built into the executable. Instead, will the run time linker then use the shared cache for the libraries? The path to the library is is built into the executable. You can inspect that with "otool -L". The fact that the operating system uses the shared cache is an implementation detail.
I can't test this theory easily since I only have one machine and it has XCode with the command line tools installed. Don't worry. About 50 million other people have thoroughly tested it by now. If you do have concerns about how your app would run in a "factory fresh" computer, you can install a virtual machine like Parallels and test it there. I strongly recommend that. Many developers install dynamic libraries from various "ports" or "brew" tools, from crazy cross-platform development tools, and are completely helpless when their apps don't work properly anywhere except their development machines.
Topic:
Developer Tools & Services
SubTopic:
General
Tags: