J'ai du mal à lier mon framework de langage mixte à un projet.
1) Je crée un cadre avec les classes Swift et Objective-C.
2) La logique principale était stockée dans un fichier Swift. Par exemple, la classe avec la méthode qui appelle NSLog ("Le journal Swift a été appelé").
3) Le fichier Objective-C a une classe qui a une méthode dans laquelle je crée une instance de la classe Swift et appelle la méthode Swift-log.
4) Je lie ce cadre à mon projet Objective-C, je peux appeler tout ce dont j'ai besoin dans ce projet, mais quand je veux construire ce projet, je reçois une erreur "linker command failed with exit code 1 (use -v to see invocation)
"
Et des avertissements:
ld: warning: Could not find auto-linked library 'swiftFoundation'
ld: warning: Could not find auto-linked library 'swiftDarwin'
ld: warning: Could not find auto-linked library 'swiftCoreFoundation'
ld: warning: Could not find auto-linked library 'swiftCore'
ld: warning: Could not find auto-linked library 'swiftCoreGraphics'
ld: warning: Could not find auto-linked library 'swiftObjectiveC'
ld: warning: Could not find auto-linked library 'swiftDispatch'
ld: warning: Could not find auto-linked library 'swiftSwiftOnoneSupport'
J'ai également vu la solution avec l'importation de fichier Swift vide, mais il était nécessaire de faire un projet sans aucune corbeille.
Apparemment, pour les projets objectifs-c purs, vous devrez ajouter ce $ (TOOLCHAIN_DIR)/usr/lib/Swift/$ (PLATFORM_NAME) aux chemins de recherche de la bibliothèque de votre cible. Cela a fonctionné pour moi alors que j'incluais une bibliothèque écrite en Swift dans un projet de objective-c
Essayez cette solution de contournement https://stackoverflow.com/a/50495316/1658268
Fondamentalement, ajoutez simplement un fichier fictif Swift dans votre projet et relancez la construction.
J'ai les mêmes erreurs lors de la compilation accidentelle d'un projet avec un instantané Swift 5.0 configuré dans les préférences Xcode »Composants» Boîte à outils.
Cela devrait résoudre le problème