Xcode的一种编译问题:Error: building could produce unreliable results

xcode 11.0在使用libusb开发的时候,编译的过程中经常会出现以下错误,每次都必须clean才能恢复正常,

根据提示将build phases的Compile Sources直接挪动到最后边,没能解决问题

也有人说Target ->Build Phases下,把Embed APP Extensions移动到列表末尾,能解决问题,但可惜我这里没有用

经过多方查验,发现是从xcode10.0就开始有这个问题了,原因是:

Xcode 10 默认使用的build system是New build system,与Xcode9不同。

Cycle inside Test1; building could produce unreliable results. This usually can be resolved by moving the target's Headers build phase before Compile Sources.
Cycle details:
→ Target 'Test1' has copy command from '/Users/a11/Documents/workspace/workspace_opengl/GlfwTest/lib-macos/libglfw.3.dylib' to '/Users/a11/Library/Developer/Xcode/DerivedData/GlfwTest-fswltakqdftvrjhcuqcxnrfzjoko/Build/Products/Debug/libglfw.3.dylib'
○ Target 'Test1' has link command with output '/Users/a11/Library/Developer/Xcode/DerivedData/GlfwTest-fswltakqdftvrjhcuqcxnrfzjoko/Build/Products/Debug/Test1'

解决方法是更改build system:

在Xcode菜单栏 -> File -> Project Settings,将build system修改为legacy build system,然后clean后编译。

 

posted @ 2020-06-01 17:55  Ring_1992  阅读(2820)  评论(0编辑  收藏  举报