Replacing lib with newer one causes symbols to be missing
I'm using mobclix lib in an iPhone app, I tried to replace the old lib with a newer one, the old lib contained a class named MobclixAdViewiPhone_300x50
, but it has been deprecated and replaced with MobclixAdViewiPhone_320x50
, I changed my code to match the library changes, and removed the old library and its headers and added the new lib and its headers (with the copy files option unchecked), but when I try to build I get a message saying:
"_OBJC_CLASS_$_MobclixAdViewiPhone_320x50", referenced from:
__objc_classrefs_DATA@0 in AdManager.o
Symbol(s) not found
Collect2: ld returned 1 exit status
I've cleaned开发者_开发问答 all targets (including dependencies and precompiled headers), restarted xcode, and even the computer, I checked and the lib is added under my target-> Link Binary with Libraries, but no luck.
What can I do to make it detect the new class in the new lib?
I found out that removing a lib from project doesn't remove the search path, so, it was looking for the previous version's directory and using the new headers.
To fix this I had to go to Build Settings > Library Search Paths and delete the old paths to the old libs.
精彩评论