当我试图构建一个iOS应用程序时,我得到这些错误。

ld: library not found for -lPods
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Ld /Users/Markus/Library/Developer/Xcode/DerivedData/Totalbox-clpeqwpfvwuhpleeejnzlavncnvj/Build/Products/Debug-iphonesimulator/Totalbox.app/Totalbox normal x86_64
cd /Users/Markus/Development/xcode/totalbox-ios
export IPHONEOS_DEPLOYMENT_TARGET=7.1
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch x86_64 -isysroot 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk -L/Users/Markus/Library/Developer/Xcode/DerivedData/Totalbox-clpeqwpfvwuhpleeejnzlavncnvj/Build/Products/Debug-iphonesimulator -F/Users/Markus/Library/Developer/Xcode/DerivedData/Totalbox-clpeqwpfvwuhpleeejnzlavncnvj/Build/Products/Debug-iphonesimulator -filelist /Users/Markus/Library/Developer/Xcode/DerivedData/Totalbox-clpeqwpfvwuhpleeejnzlavncnvj/Build/Intermediates/Totalbox.build/Debug-iphonesimulator/Totalbox.build/Objects-normal/x86_64/Totalbox.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -ObjC -framework CoreGraphics -framework Foundation -framework MobileCoreServices -framework QuartzCore -framework Security -framework SystemConfiguration -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=7.1 -framework CoreGraphics -framework UIKit -framework Foundation -lPods -Xlinker -dependency_info -Xlinker /Users/Markus/Library/Developer/Xcode/DerivedData/Totalbox-clpeqwpfvwuhpleeejnzlavncnvj/Build/Intermediates/Totalbox.build/Debug-iphonesimulator/Totalbox.build/Objects-normal/x86_64/Totalbox_dependency_info.dat -o /Users/Markus/Library/Developer/Xcode/DerivedData/Totalbox-clpeqwpfvwuhpleeejnzlavncnvj/Build/Products/Debug-iphonesimulator/Totalbox.app/Totalbox

在构建设置中的PODS ROOT:

${SRCROOT}/Pods

我没有创建这个Xcode项目-只是从git中取出它来检查。


当前回答

以上答案都不能解决我的问题。

我所做的是在目标部分之外运行pod install命令。例如:

#WRONG
pod 'SOMEPOD'

target "My Target" do
    pod 'OTHERPODS'
end

我迅速修复了它,并将错误的pod返回到它所属的目标部分,并再次运行pod安装:

# CORRECT
target "My Target" do
    pod 'SOMEPOD'
    pod 'OTHERPODS'
end

但与此同时发生的是,lib -libPods。a被添加到我的链接库,它已经不存在了,也不应该存在,因为已经有-libPods-My Target。A在里面。

所以解决方案是进入我的目标的通用设置,找到链接框架和库,然后删除-libPods。从名单上选A。

其他回答

我得到了同样的错误。

问题:我创建了一个单独的工作区,并将我现有的项目添加到其中。当我在那个工作区工作时,我得到了错误。

解决方案:后来我发现,当添加依赖项时,Workspace会自动在现有项目中创建。并且必须在那个工作空间里工作。

经过几个小时的研究,这个解决方案对我来说很有效:

(免责声明:结果可能因情况而异)

库未发现- lpods -(someCocoapod)错误是由于多个条目在:

Settings(Target) > Build Settings > Linking > 'Other Linker Flags'

很多其他的帖子让我去那里看,当我乱动条目时,我会看到错误的变化,但我总是在相同的错误上得到一些变化。

浪费了太多时间……

我的解决办法:

删除'Other Linker Flags'列表中的- lpods -(someCocoaPod)行,但前提是$(inherited)位于顶部。起初我不确定,但令人放心的迹象是,当我离开编辑模式(继承)时,我仍然看到了对我的cocoapods的引用。我在调试和发布中进行了测试,两者都给出了错误,问题立即得到了解决。

如果项目使用CocoaPods,请注意始终打开.xcworkspace文件而不是.xcodeproj文件。

我的步骤:

删除pods文件夹和“pods”文件。 在终端中输入pod install。 在终端输入“pod update”。

除了确保“构建活动架构”被设置为YES,就像之前的回答中提到的那样,这是为我做的事情。

我的方式

创建新项目并安装pod,它将可以正常运行。 复制文本在“其他链接器标志”在新项目到旧项目。使旧项目到相同的新项目。 也检查“头搜索路径”。