I'm trying to add Three20 to my project, but the -ObjC and -all_load flags are messing with another library I'm using. The other library is ZXingWidget for barcode reading, but I don't think that part is relevant.
I'm reasonably sure the answer is to use force_load instead of all_load and then point to my three20 libraries, but I can't get it to work.
Here's what i'm using now:
-force_load ../facebook-three20/Build/Products/Debug-iphonesimulator/*.a
But I get an errno=22 build fail immediately.
Even if I get the force_load to work, the -ObjC flag causes issues all by itself. How am I supposed to have different flags for different libraries? I don't see a way to put build flags on the actual libraries.
EDIT: So I just added each of the .a libraries with force load, and it'll compile, but it still gives me the unrecognized selector with some internal call from Three20 that I had before I did the force_load. Are there libraries I'm missing, or am I doing this wrong?
Apparently this is related to a bug in XCode 3.2 with how the flags work, and XCode 4 fixed it. :\
来源:https://stackoverflow.com/questions/3463226/using-three20-with-another-library-and-conflicting-linkage-flags