title: How to properly set run paths, search paths, and install names?
body: <p>I have a collection of projects that I'm compiling as dynamic libraries. Each of these .dylibs depend on other various .dylibs that I would like to place in various other directories (i.e. some at the executable path, some at the loader path, some at a fixed path).</p>
  
  <p>When I run <code>otool -L</code> on the compiled libraries, I get a list of paths to those dependencies but I have know idea how those paths are being set/determined. They almost appear pseudo random. I've spent hours messing with the "Build Settings" in Xcode to try and change these paths (w/ @rpath, @executable_path, @loader_path, etc.) but I can't seem to change anything (as checked by running <code>otool -L</code>). I'm not even entirely sure where to add these flags and don't really understand the difference between the following or how to properly use them:</p>
  
  <p>Linking - "Dynamic Library Install Name"<br>
  Linking - "Runpath Search Paths"<br>
  Linking - "Other Linking Flags"<br>
  Search Paths - "Library Search Paths"</p>
  
  <p>When I run <code>install_name_tool -change</code> on the various libraries, I am able to successfully change the run path search paths (again as verified by running <code>otool -L</code> to confirm).</p>
  
  <p>I'm running Xcode 4.2 and I'm very close to giving up and just using a post-build script that runs install_tool_name to make the changes. But its a kludge hack fix and I'd prefer not to do it.</p>
  
  <p>Where can I see how the search/run paths for the dylib dependencies are being set?<br>
  Anyone have any ideas on what I might be doing wrong?</p>