2017-01-22 1 views
6

Dans mon projet, j'ai un nombre élevé de bibliothèques statiques. J'utilise actuellement l'indicateur -ObjC linker qui inclura tous les membres des bibliothèques statiques qui implémentent une classe objective-c.Comment ignorer l'indicateur -Objc pour une bibliothèque spécifique

J'ai 1 bibliothèque statique particulièrement grande où je veux spécifiquement seulement des classes qui sont utilisées pour être incluses dans le binaire (je suis conscient de la nature dynamique de l'objectif-c et des mises en garde de le faire). C'est ce qui arriverait si les -ObjC n'étaient pas utilisés.

Est-il possible de spécifier au lieur que je veux que cette bibliothèque spécifique ne tombe pas sous le drapeau -ObjC?

Il serait regrettable que la seule façon d'accomplir cela serait d'ajouter l'indicateur force_load pour chaque autre bibliothèque que je trouve d'une manière ou d'une autre contenant objc.

Répondre

5

L'indicateur -ObjC de Linker ne prend pas d'arguments et s'applique à toutes les bibliothèques. Ainsi, votre seule option est d'utiliser -force_load pour chaque autre bibliothèque.

Vous pourriez être en mesure d'automatiser cela avec xcodeproj ou généré xcconfigs