development developer desarrollador app iphone xcode frameworks shared-libraries static-libraries

iphone - developer - ¿Incluir framework en la biblioteca estática de Xcode?



xcode 8.3 3 download (2)

Una nueva respuesta a esta pregunta sería, sí, es posible: ¡use cocoapods! :)

http://cocoapods.org

En breve:

¿Hay una manera de crear una biblioteca estática en Xcode de modo que cuando los clientes se vinculen con esa biblioteca, también se vinculen con los marcos de los que depende esa biblioteca?

El problema:

Tenemos un proyecto de Xcode compartido que contiene múltiples objetivos de biblioteca estática que contienen todo nuestro código común. Por ejemplo, si un proyecto quiere usar el código de red compartido, todo lo que deben hacer es vincularlo en nuestra biblioteca de red.

El problema es que las bibliotecas no parecen "incluir" los marcos de los que dependen.

Por ejemplo, nuestra biblioteca de sonidos utiliza AudioToolkit.framework. Incluso cuando la biblioteca de sonidos incluye AudioToolbox.framework en la lista de sus bibliotecas vinculadas, los clientes obtienen errores de enlace al vincularse con Sound si no lo hacen directamente con AudioToolkit.framework.

Esto es un problema de mantenimiento porque cada vez que cambian las dependencias del marco de la biblioteca, cambiamos manualmente la lista de marcos vinculados en todos los proyectos dependientes.

¿Se supone que esto funciona? ¿Hay alguna manera mejor?

¡Gracias!


En resumen: no, una biblioteca estática es solo un grupo de archivos .o

Una solución sería refactorizar su código común en "marcos estáticos", consulte una posible solución.