J'essaie de lier de manière conditionnelle dans. Est-ce possible dans xcode? Essayant fondamentalement d'intégrer le code spécifique de la bibliothèque dans ifdefs afin qu'il puisse être exclu au moment de la compilation en définissant des drapeaux.chemins de recherche de bibliothèque conditionnelle cible xcode
0
A
Répondre
1
Non, un C #define
n'est pas au même niveau que la liaison de bibliothèque.
Cependant, vous pouvez définir un C #define
(via le paramètre de compilation des macros préprocesseur) de la valeur d'un paramètre de construction personnalisé, comme BUILT_WITH_FOO
, et également définir votre build OTHER_LDFLAGS
paramètre basé sur cette version personnalisée mise aussi bien.
Par exemple:
BUILT_WITH_FOO = foo
GCC_PREPROCESSOR_DEFINITIONS_ = USING_FOO=0
GCC_PREPROCESSOR_DEFINITIONS_foo = USING_FOO=1
GCC_PREPROCESSOR_DEFINITIONS = $(GCC_PREPROCESSOR_DEFINITIONS_$(BUILT_WITH_FOO))
OTHER_LDFLAGS_ = -lsomething
OTHER_LDFLAGS_foo = -lsomething -lfoo
OTHER_LDFLAGS = $(OTHER_LDFLAGS_$(BUILT_WITH_FOO))
ci-dessus ne vous permettra d'ajuster seulement la valeur de la BUILT_WITH_FOO
build mise à choisir d'utiliser les macros préprocesseur et d'autres drapeaux Linker variantes dont les noms se terminent par un _
arrière, ou ceux dont les noms se terminent par un _foo
.
Questions connexes
- 1. "Chemins de recherche d'en-tête" et "Chemins de recherche d'en-tête utilisateur" dans XCode?
- 2. chemins de recherche où une bibliothèque native dépend d'une autre
- 3. Recherche de bash conditionnelle?
- 4. Définition des chemins de recherche de la structure?
- 5. xcode compilation conditionnelle
- 6. Comment modifier une cible Xcode existante de dynamique à statique?
- 7. Parfois, Xcode semble ignorer les paramètres de construction cible?
- 8. Aucune Cible iPhoneOS dans xcode
- 9. Xcode: adhésion cible aux frameworks?
- 10. Force la liaison statique de la bibliothèque liée à la cible Xcode?
- 11. Différents chemins de recherche pour tclsh
- 12. bibliothèque de recherche audio
- 13. Inclusion d'une bibliothèque statique dans un projet Xcode
- 14. Définition de chemins dylib en tant qu'étape de génération de XCode
- 15. recherche de cible dans MS Access
- 16. Bibliothèque de recherche qui récupère les valeurs en fonction des chemins
- 17. J'ai delteted ma cible à XCode
- 18. Script xcode RunUnitTests dans la cible de test unitaire?
- 19. Macro prédéfinie Xcode/GCC pour le nom de la cible?
- 20. iphone - Erreur Xcode 3.2.3 concernant la cible de déploiement
- 21. Xcode: Impossible de modifier l'appartenance cible pour les dossiers
- 22. XCode: dépendance de la cible iPhone sur la cible Mac OS X
- 23. Conseils pour la configuration de chemins de recherche CTAGS complexes
- 24. recherche de l'algorithme K-first de chemins courts
- 25. Recherche de chemins de lecteur USB sous Mac OS 10.4
- 26. Recherche de chemins d'accès sources à l'aide de la tâche de recherche de tâche
- 27. Chemins de cadre iPhone?
- 28. Débogage d'une bibliothèque avec Xcode
- 29. Bibliothèque de fichiers qui aide à créer des chemins
- 30. Aide à la recherche des chemins
Mais cela résoudrait-il mon problème? Ou si j'ai lib.a dans mes chemins de recherche mais aucun code le référençant à la compilation son nit compilé du tout de toute façon? – drunknbass
Une bibliothèque statique n'est pas compilée, elle est liée. Le simple fait d'être dans les chemins de recherche ne suffit pas à le lier; il doit être spécifié soit dans la phase de construction Link Frameworks & Libraries dans votre cible, soit dans OTHER_LDFLAGS (comme je l'ai montré ci-dessus, c'est-à-dire -lfoo). Si ce n'est pas le cas, cela ne sera pas lié. –