Как я могу изолировать символы сторонних библиотек C / C ++ / ObjC друг от друга?
У меня есть проект, который должен включать две сторонние библиотеки, libA и libB. У меня мало, если таковые имеются, влияние на сторонние библиотеки. Проблема в том, что и libA, и libB содержат разные версии общей библиотеки ASIHTTPRequest. В результате я получаю ошибки, такие как:
-[ASIFormDataRequest setNumberOfTimesToRetryOnTimeout:]: unrecognized selector sent to instance 0x3b4170
Я могу только предположить, что libA ссылается на реализацию ASIHTTPRequest в libB (или наоборот).
Я пытался поиграть сstrip -s <symbol file> -u <library>
чтобы изолировать символы библиотек друг от друга, но это приводит к тому, что компоновщик XCode выдает тысячи предупреждений и фактически не решает основную проблему, описанную выше.
ld: warning: can't add line info to anonymous symbol anon-func-0x0 from ...
В общем, как можно / нужно изолировать библиотеки друг от друга?