title: dynamic libraries in XCode
body: <p>I am trying to create an mac application in XCode that has some of its implementation in a dynamic library.</p>
  
  <p>I added a new target (dynamic library) to my XCode cocoa project and after a bit of fighting with frameworks and precompiled headers, have the dynlib compiling - and running successfully from the debugger.</p>
  
  <p>When run standalone however its apparent that the dynlib is in the wrong place. "Library not loaded: /usr/local/lib/testlib.dynlib". On Windows - my more usual platform - Dlls can be placed in the same folder as the exe, and anywhere on the system path.</p>
  
  <p>I would rather like my application to look for its dynlib somewhere in its application bundle (and certain documents seem to confirm this as the correct approach), but I don't know how.</p>
  
  <p>Is it possible to configure the project in XCode so that the dylib actually is copied into the app bundle, in a place where the app will look for it?</p>
  
  <hr>
  
  <p>It seems I don't need to use otool to reset the search path. If I edit the Target Info -> Build -> Deployment -> Installation Directory I can change, from inside XCode, the path that dyld is going to look at for the dylib. By default for a new dynamic library project, the path was set to <code>/usr/local/lib</code>. Which I have changed to <code>./</code> - otool confirms that ./ is now where dyld is going to be looking for this specific dynamic module. Unfortunately ./ doesn't seem to actually refer to any directory in my application bundle :(</p>
  
  <p>So, my questions (not answered in the other thread) now are:
  1. How do I enter a meaningful <em>relative</em> path in the Target Info -> ... -> Installation Directory setting, and 
  2. How can I get XCode to automatically copy the dylib 'target' into the application bundle target's bundle folder at the relative location?</p>