使用Carthage管理我的依赖项,一切都在模拟器中运行良好。
但是,在为设备构建时,我收到以下错误:
Module File was created by an older version of the compiler; rebuild Alamofire and try again: .../DerivedData/Build/Products/Debug-iPhones...
我已经尝试过其他人对类似问题的建议:删除我的派生数据,重新安装Carthage并重建框架。但是,错误一直存在。
答案 0 :(得分:35)
您使用的是正确版本的xcodebuild吗?你运行xcode-select -p时看到了什么?如果你想在Xcode 7中使用框架,应该指向Xcode 7。
删除所有派生数据rm -rf ~/Library/Developer/Xcode/DerivedData/ && carthage build
此外,当您使用carthage update
而不使用--no-use-binaries 选项时,它会下载可以使用旧版xcodebuild构建的预构建框架。
替代方法是使用carthage update --no-use-binaries
。这样,它将使用Mac上安装的最新Xcode版本编译所有框架。
答案 1 :(得分:1)
我正在使用cocoapods.I只需右键单击错误的框架,在Finder中显示,删除它,然后再次构建项目,解决问题。
答案 2 :(得分:-1)
您可以尝试通过命令行重建框架:
然后清理xcode项目并运行!