2014-10-10 109 views
0

我从Xcode 5升级到6,现在我的代码无法编译。我发现一些类似的问题从3到4,但没有为最新版本。从Xcode 5升级到6的项目将无法编译

这是我收到的错误。

ld: building for iOS Simulator, but linking against dylib built for MacOSX file '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/XCTest.framework/XCTest' for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

这是否有一个共同的修复?

感谢您的任何帮助。

+0

请尝试删除您的衍生数据? – JAL 2014-10-10 14:58:29

+0

试过这个。没有运气。 – 2014-10-10 15:38:11

+0

你有没有得到这个工作?我想我遇到了类似的问题 – mosquito242 2016-01-11 21:42:59

回答

0

我有一个类似的问题,通过运行干净(在产品/清洁下的菜单)修复。

+0

这里没有运气。我清理成功,但仍然无法编译。 – 2014-10-10 14:50:18

0

编辑1: 哦发现您的构建设置的问题。

1. 测试文件如何与您的项目链接? 只需从Project Navigator> Targets>'Project Name'> Build Phases中删除“XCTest.Framework”文件即可。 然后,“产品”(下拉菜单)>清洁。为我做了!

2. 此外 项目>目标>“项目名称”>构建阶段>编译源代码 XCTest不应该被包含在普通的应用程序代码。所以你应该从编译源中移除任何测试源并移动到测试目标。


您应该在Build Settings中将您的'Build active architecture only'更新为NO。

重新启动Xcode和干净的版本。

应该可以正常工作。

+0

在构建设置中更改为NO,重新启动并清理。仍然无法编译。 – 2014-10-10 15:22:29

+0

更新了上面的解决方案。 – bllakjakk 2014-10-10 15:33:29

+0

我从构建阶段页面中删除。我已经完成并清理了。仍然没有编译。 – 2014-10-10 16:05:06

0

听起来像你需要从你的项目文件中删除XCTest框架,并重新从iOS框架中添加它。

似乎很奇怪,在升级过程中,您的iOS项目以某种方式与Mac框架链接。