当我尝试构建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中取出来检查它。
答案 0 :(得分:523)
如果项目使用CocoaPods,请注意始终打开.xcworkspace
文件而不是.xcodeproj
文件。
答案 1 :(得分:88)
也有这个问题。我的CocoaPods安装有问题。除了KIF之外没有正确安装的吊舱。我按照this thread的评论来提供帮助。
基本上,我需要确保我的项目和Pods项目的Build Active Architectures Only
设置相同。
答案 2 :(得分:48)
经过数小时的研究,这个解决方案对我有用:
(免责声明:结果可能因情况而异)
Library not found -lPods-(someCocoapod)
错误是由于:
Settings(Target) > Build Settings > Linking > 'Other Linker Flags'
很多其他帖子让我看到那里,当我弄乱条目时,我会看到错误的变化,但我不断对同一错误进行一些修改。
失去了太多时间......
仅当$(继承)位于顶部时,才删除“其他链接标志”列表中的-lPods-(someCocoaPod)行 BUT 。起初我不确定,但令人安心的迹象是,当我离开编辑模式(继承)时,我仍然看到了对我的cocoapods的引用。我在调试和发布中测试过,这两个都给了我错误,问题立即解决了。
答案 3 :(得分:32)
似乎项目一直在使用cocoapods。并且项目中缺少这些文件。
你不能从git下载它。你需要从cocoapods安装它。
要获得更多帮助,您可以关注Introduction to CocoaPods Tutorial
如果项目使用CocoaPods
,请注意始终打开.xcworkspace
文件而不是.xcodeproj
文件
答案 4 :(得分:26)
如果您的项目中有多个目标,Cocoapods可能只与其中一个目标很好地集成在一起。
我必须为每个额外的目标手动链接到“Link Binary With Libraries”中的libPods.a
。
答案 5 :(得分:22)
我的问题已通过以下配置修复:
<?php
$allowedImages = array(
'gif10000.gif',
'gif2.gif' //etc
);
$file = $_GET['file'];
if (in_array($file, $allowedImages)) {
echo '<img src="'.$file.'" />';
}
?>
答案 6 :(得分:10)
上述答案都没有为我解决。
我所做的是在pod install
部分之外使用pod
命令运行target
。例如:
#WRONG
pod 'SOMEPOD'
target "My Target" do
pod 'OTHERPODS'
end
我快速修复了它并将错误的pod返回到它所属的target
部分并再次运行pod install
:
# CORRECT
target "My Target" do
pod 'SOMEPOD'
pod 'OTHERPODS'
end
但与此同时发生的事情是,lib -libPods.a
被添加到我的链接库中,这些库已不再存在且不应该存在,因为已经存在-libPods-My Target.a
那里。
因此解决方案是进入我的目标常规设置并转到链接的框架和库,然后从列表中删除-libPods.a
答案 7 :(得分:8)
如果有人在使用react-native-fbsdk
安装后使用Cocoapods
来解决错误,请记住您必须删除项目构建阶段<中的所有其他.a文件/ strong>并且只保留名为libPods-WhateverAppName.a
的cocoapods中的.a。
这通常是由于运行rnpm link
和rnpm工作方式引起的。
我从构建阶段删除了facebook核心.a文件后,我的项目再次启动并运行。
答案 8 :(得分:7)
我的步骤:
除了确保&#34;构建活动架构&#34;如前面的答案中提到的那样设置为YES,这就是为我做的事情。
答案 9 :(得分:6)
将7.0
从8.0
升级到use_frameworks!
并启用cocoapods
PodName.a
未从我项目的Frameworks
部分删除以前生成的linker error
文件。
所以我必须手动删除它们,因为它们导致{{1}}
答案 10 :(得分:4)
删除导入的cocoapods源的所有相应文件/文件夹,但podfile除外。
再次 install cocoapod
。这应该清除原始来源的任何多余拉动。
答案 11 :(得分:2)
当你从使用Cocoapods的地方克隆项目时,你需要将它们安装到你的项目中。
在此逐步完成您需要做的事情:
祝你好运!
答案 12 :(得分:2)
对我来说,以下是有效的。
清理并运行项目。如果仍然错误收到相同的信息,请尝试设置“项目目标 - &gt;构建设置 - &gt;仅构建活动架构”,将“调试”设置为“是”并将“集成和释放”设置为“否”。然后对所有“Pods Targets”重复相同的“Build Active Architectures”设置
清理并运行项目。如果您收到以下错误
No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=i386).
然后尝试Mike先生在此链接中回答
希望它有所帮助!
答案 13 :(得分:2)
在具有多个目标的项目中,我在更改Scheme和App名称并尝试更新pod后遇到了同样的问题。该问题是由于Build Phases中的多个条目引起的 - &gt;将二进制文件链接到库,其中列出了先前的.a库和当前库,而前一个库不再存在。从那里删除库清除了问题。
答案 14 :(得分:2)
花了一些时间才弄明白...我正在尝试构建 swift 框架,该框架又依赖于一个可可豆库,我在发布模式下创建构建时遇到此错误,在调试模式下它工作正常!
我验证了所有目标是否具有相同的部署目标,并发现不匹配的 pod 目标与我的框架具有不同的 iOS 部署目标,因此我在任何地方(swift 框架、pod 目标)都保持相同的 iOS 部署目标,并且它的工作非常迷人!
答案 15 :(得分:1)
对我而言,这是有效的。我已将我的应用名称从someApp更改为otherApp。我正在使用可可豆荚进行多个第三方服务集成。因此添加了2个libPod文件(因为我更改了应用程序的名称和目标)。最后我不得不删除一个libPod。它起作用了。
靶&GT;构建阶段 - &gt;链接二进制文件库
答案 16 :(得分:1)
我的方式
创建新项目并安装pod,它可以正常运行。
将新项目中“Other Linker Flags”中的文本复制到旧项目中。将旧项目改为同一个新项目。
同时检查“标题搜索路径”。
答案 17 :(得分:1)
以下解决方案适用于我的核心情节2.3版本。 在其他链接器标志部分下进行以下更改。
1.添加$(继承)并将此项目拖动到顶部位置 2.删除&#34; Pods - &#34;前缀来自-l&#34; Pods-fmemopen“,l&#34; Pods-NSAttributedStringMarkdownParser”和-l&#34; Pods-MagicalRecord“。
如果问题仍然存在,最后查看是否设置了PODS_ROOT。您可以在用户定义的部分进行检查。
答案 18 :(得分:1)
我得到了同样的错误。
问题:我创建了一个单独的工作区并将现有项目添加到其中。我在工作区工作时遇到错误。
修复:后来我发现在添加依赖项时,Workspace会在现有项目中自动创建。并且必须在那个工作区上工作。
答案 19 :(得分:1)
我遇到了同样的问题
命令行上的pod install和pod update解决了我的问题
答案 20 :(得分:1)
尝试使用 cocoapods
将 Firebase 集成到我的Xcode项目时,这是我的问题SELECT device_id INTO last_device_id
FROM company
ORDER BY id DESC
LIMIT 1;
EXECUTE 'INSERT INTO ' || quote_ident(last_device_id)
|| ' (emp_id, entry_date, name) VALUES ($1, $2, $3)'
USING new.id, current_timestamp, new.name;
经过几个小时的搜索并尝试了stackoverflow中列出的各种修补程序后,我的问题终于修复了以下步骤
答案 21 :(得分:1)
可以通过以下步骤解决与lPods相关的问题
"Build Phases"
中的"Link Binary With Libraries"
。".a"
文件。 这将起作用。
答案 22 :(得分:1)
答案 23 :(得分:1)
在这上面花了半天后,我发现了我的问题。由于某些依赖性,我已将部署目标从 10 提高到 12.1。我更新了项目部署目标和我所有的 pod。
我刚刚发现在目标级别也有一个部署目标。将此升级到 12.1 后,我的项目再次构建。
“项目”的部署目标
Podfile:
“目标”的部署目标:
答案 24 :(得分:0)
如果项目使用CocoaPods,请务必始终打开.xcworkspace文件而不是.xcodeproj文件。 如果您使用的是.xcworkspace,请通过卸下吊舱重新安装吊舱文件,然后再次插入吊舱并进行安装!这对我有用