将KIF添加到现有Xcode 6工作区时遇到此错误:
ld: library not found for -lPods-MyProjectTests-KIF
我MyProject.xcworkspace/
位于MyProject.xcproject/
的父目录中的情况可能有什么特别之处(并且还取决于其他几个兄弟项目):
./MyProject.xcworkspace/
./MyProject/
./MyProject/MyProject.xcworkspace/
./MyProject/Podfile
我的Podfile
如下:
target 'MyProjectTests', :exclusive => true do
pod 'KIF', '~> 3.0', :configurations => ['Debug']
workspace 'MyProject'
end
当我运行pod --project-directory=./MyProject install
并打开MyProject.xcworkspace
时,目标MyProject
仍在编译,但在构建MyProjectTests
时我收到引用的链接错误。
我如何克服这个问题?
更新我现在的猜测是,Pods-MyProjectTests.*.xcconfig
某些设置无法正确inherited,这可能是由于先前的修改已删除项目中的$(inherited)
或某些地方的目标等级(虽然这通常应该产生warnings)。
答案 0 :(得分:0)
我最初的猜测(在更新的问题中)是错误的。 pod ... install
创建了一个新的MyProject.xcworkspace\
作为Podfile
的兄弟,而不是修改当前目录中的一个。我错误地假设了第二个。
这些步骤有效:
MyProject.xcworkspace/
pod install
MyProject.xcworkspace/
到原来的位置Pods.xcodeproj/
的引用
(因为文件系统中的相对位置已经改变)和
重新创建它的新引用。由于这有点麻烦,我还发布了一个新问题。