Developer

Configuring Build Settings

Configure the required build settings.

Prerequisites

Copy all the public header files belonging to the libraries being used to the project directory under target/header.

Procedure

  1. Select Build Settings and search for search path in the search bar.

    Build Settings

  2. Select Header Search Paths and insert: "${PROJECT_DIR}/target/headers/${BUILD_STYLE}-${PLATFORM_NAME}/**".
  3. Select Library Search Paths and insert: "${PROJECT_DIR}/target/libs/${BUILD_STYLE}-${PLATFORM_NAME}/**".
    Ensure all the lib binaries have been copied in the project’s directory under target/libs.
  4. Set the required linker flags.
    1. In the left pane, select the project root, choose the target, and click Build Settings.
    2. In the Linking section, locate Other Linker Flags and add: –ObjC –all_load. If this setting does not appear, verify that you have displayed All build settings (not Basic).

      All Build Settings

Results

Objective-C generates only one symbol per class. You must use the ObjC flag to instruct the linker to also load the referenced objects of the given class.. The -all_load option forces the linker to load all object files from every archiv, even those without Objective-C code, which is important for loading object files from static libraries that contain only categories and no classes. Make sure to include these settings, to avoid runtime issues (for example, “unknown selector”-like exceptions).