我在将混合语言框架链接到项目时遇到问题。
我使用 Swift 和 Objective-C 类创建了一个框架。
主要逻辑存储在 Swift 文件中。例如,具有调用 NSLog("Swift log was called") 的方法的类。
Objective-C 文件有一个类,该类有一个方法,我可以在该方法中创建 Swift 类的实例并调用 Swift-log 方法。
我将此框架与我的 Objective-C 项目链接,我可以调用此项目中所需的所有内容,但是当我想要构建此项目时,我收到错误
linker command failed with exit code 1 (使用 -v 查看调用)
和警告:
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 文件的解决方案,但有必要创建一个没有任何垃圾的项目。
最佳答案
- 在 Xcode 中打开 ios/YourAppName.xcodeproj
- 在左侧项目导航器中右键单击您的应用名称,然后单击“新建文件...”
- 在项目中创建一个空 Swift 文件(确保在添加时选择“您的应用程序名称”目标)
- 当 Xcode 询问时,按“创建桥接 header ”,然后不要删除 Swift 文件。 重新运行您的构建。
这应该可以解决问题
关于ios - 为什么我的静态库会出现 iOS 链接器错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56724106/