Missing Categories
On some platforms, the dynamic loader doesn’t include a shared object in a process if it doesn’t detect that the executable uses any symbols from that object. This can cause a problem for pure Objective-C shared objects, for example frameworks that add categories to existing classes, because the loader doesn’t detect the method selectors as referenced symbols.
The symptom of this problem is a runtime exception that occurs when an object receives -[NSObject doesNotRespondToSelector:].
Tell the linker to instruct the loader to unconditionally load an object by adding these options to the linker invocation in your GNUmakefile, for example, by adding to the ADDITIONAL_LDFLAGS variable:
ADDITIONAL_LDFLAGS=-Wl,--no-as-needed
