Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>This will not be possible in Xcode alone. You will need some build Scripts (which you can call from within Xcode of course) because of the compilation target switch (simulator, device, etc.).</p> <p>I think you will have to add additional distribution headers to a "Copy files" build step at least. But other modifications should not be necessary if you change something.</p> <p>I did something like this for libturbojpeg, see <a href="https://github.com/dunkelstern/libturbojpeg-ios" rel="nofollow">https://github.com/dunkelstern/libturbojpeg-ios</a> for reference. It currently puts a fat library into "lib" if you call the "build.sh" file from the terminal, but omits distribution headers. In the case of libturbojpeg I needed 2 project files because each target compiles a different subset of assembler files into the library (better do not look at the assembler makefile stuff). To compile you will need a recent version of NASM as the version apple ships is ancient (get it with brew). I will post a template for such a library build project on the same account shortly. (Will edit or comment if done here with appropriate links)</p> <p>Basically it works like this:</p> <ol> <li>Create a build script that calls <code>xcodebuild</code> for each needed platform target</li> <li>The Xcode library project has to contain a script to drop the built libraries in a directory the build script can find</li> <li>Additional headers have to be copied by a "Copy files" target action</li> <li>The build script has to merge all library builds with <code>lipo</code></li> <li>Add the build script as "Run Script" target to your build, but be aware you do not create an infinite loop (or just call it from terminal for creating a release build)</li> <li>In your main project add the library subproject</li> </ol> <p>You can then distribute the output dir with the copied header files and the <code>lipo</code> merged universal library and use the library normally as subproject in your workspace as you would do normally (it builds and links only the needed libs then, not the universal lib but that should be no problem)</p> <p>This does not in fact solve the problem of creating DSYM files for the library. But normally the debugging symbols should be in the library itself when building a debug build. It will strip the debugging symbols on release build and you will have no DSYM then.</p> <p>Link to example project: <a href="https://github.com/dunkelstern/StaticLibraryTemplate" rel="nofollow">https://github.com/dunkelstern/StaticLibraryTemplate</a></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.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      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