我在将混合语言框架链接到项目时遇到问题。
1)我用Swift和Objective-C类创建框架。
2)主要逻辑存储在Swift文件中。例如,带有调用NSLog(“ Swift log was created”)的方法的类。
3)Objective-C文件的类具有创建我的Swift类实例并调用Swift-log方法的方法。
4)我将此框架与Objective-C项目链接在一起,可以调用此项目中需要的所有内容,但是当我要构建此项目时,会收到错误“ linker command failed with exit code 1 (use -v to see invocation)
”
和警告:
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'
我还看到了导入空Swift文件的解决方案,但必须使项目没有任何垃圾。
显然,对于纯Objective-C项目,您需要将此$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)
添加到目标的library搜索路径中。当我在目标-c中包括为项目快速编写的库时,这对我有用
对于XCode 11 beta 4 库搜索路径
就我而言,这是添加Swift Pods库后的一个React-Native项目。也许只是第2步可以工作:
[使用Xcode首选项»组件»工具链中配置的Swift 5.0快照意外编译项目时,我遇到了相同的错误。
如果将Xcode 11 beta 4与迦太基结合使用时遇到此错误,请参见以下解决方法: