Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"unrecognized selector sent to instance" to a static library despite ObjC flag

I'm getting a runtime error in my application:

2011-05-17 09:42:31.124 rxsync[67464:207] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSMutableURLRequest setHTTPBodyWithFormMultipartValues:fileNames:contentTypes:usingBoundary:]: unrecognized selector sent to instance 0x4e3cd90'

This method, NSMutableURLRequest setHTTPBodyWithFormMultipartValues: fileNames: contentTypes: usingBoundary:], is defined by a static library that's part of my .xcworkspace.

Here's what I've checked so far:

  1. The static library is included in my Link Binary With Libraries phase.
  2. I have ObjC in the Other Linker Flags (OTHER_LDFLAGS = -ObjC) in my application. (In fact, I have it in my static library, too, since it's based on the same xcconfig file.)
  3. The signature is the same in my .h and .m file.
  4. The static library has definitely been rebuilt.
  5. I have verified that the object I'm sending the message to is valid.

What possibilities am I missing?

I'm using Xcode 4.0.2. This is an iPhone target.

like image 586
Steven Fisher Avatar asked May 17 '11 16:05

Steven Fisher


1 Answers

You additionally need to add -all_load to the Other Linker Flags of the target which is using your static library.

like image 189
thbonk Avatar answered Nov 22 '22 13:11

thbonk