¿Cómo puedo aislar los símbolos de las bibliotecas C / C ++ / ObjC de terceros?

Tengo un proyecto que necesita incorporar dos bibliotecas de terceros, libA y libB. Tengo poca o ninguna influencia sobre las bibliotecas de terceros. El problema es que tanto libA como libB incluyen diferentes versiones de una biblioteca común, ASIHTTPRequest. Como resultado, recibo errores como:

-[ASIFormDataRequest setNumberOfTimesToRetryOnTimeout:]: unrecognized selector sent to instance 0x3b4170

, que solo puedo suponer que se debe a que libA se refiere a la implementación de ASIHTTPRequest de libB (o al revés).

He intentado jugar constrip -s <symbol file> -u <library> para aislar los símbolos de las bibliotecas entre sí, pero eso da como resultado que el enlazador de XCode escupe miles de advertencias y en realidad no soluciona el problema principal descrito anteriormente.

ld: warning: can't add line info to anonymous symbol anon-func-0x0 from ...

En general, ¿cómo se puede / se debe aislar las bibliotecas entre sí?

Respuestas a la pregunta(2)

Su respuesta a la pregunta