Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to properly set run paths, search paths, and install names?
    primarykey
    data
    text
    <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>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload