55

我收到以下错误:

ld:找不到-lGoogleAnalytics clang 的库:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

我花了一些时间在谷歌上搜索,但找不到解决这个问题的方法。我是 xcode 的新手,这是我需要处理的现有项目。

4

14 回答 14

27

You need to set the "linker search paths" of the project (for both Debug and Release builds). If this library was in, say, a sibling directory to the project then you can set it like this:

$(PROJECT_DIR)/../GoogleAnalytics/lib

(you want to avoid using an absolute path, instead keep the library directory relative to the project).

于 2012-07-06T08:49:21.163 回答
27

就我而言,该项目使用 CocoaPods。我的项目中缺少一些文件。

所以我从 CocoaPods 安装它:https ://cocoapods.org/ 。

如果项目使用 CocoaPods,我们必须注意始终打开 .xcworkspace 文件夹,而不是Xcode 中的 .xcodeproj 文件夹。

于 2019-12-05T03:51:42.897 回答
19

总而言之,Xcode 找不到 library/header/framework 的位置,然后你告诉 Xcode 它们在哪里。

在Build Settings --> Library/Header/Framework Search Paths中设置Xcode 用来查找 library/header/framework 的路径。

说,现在它找不到-lGoogleAnalytics,所以你将目录添加-lGoogleAnalyticsLibrary Search Paths中。

于 2013-09-29T05:19:55.887 回答
12

就我而言,我有一个项目在“构建设置>其他链接器标志”中有很多条目

我需要减少到只是

  $(inherited)
  -ObjC

旧设置:

旧设置

更新设置:

在此处输入图像描述

于 2017-03-03T22:05:28.633 回答
6

对我来说,我打开 projectname.xcworkspace 文件,一切正常。

于 2019-12-15T05:33:15.623 回答
4

如果您安装了 pod,请确保打开工作区文件夹(白色 Xcode 图标)而不是项目文件夹。这解决了library not found for ...错误。非常简单的问题,但我被困了很长时间。

于 2019-10-08T00:40:36.320 回答
2

如果您使用 Pods 将 GoogleAnalytics iOS SDK 包含到您的项目中,值得注意的是,自从 3.0 版本以来,您Other Linker Flags需要包含-lGoogleAnalyticsServices而不是旧的-lGoogleAnalytics

于 2013-11-07T11:06:53.483 回答
2

这对我有用:

  1. 转到构建设置 -> 链接 -> 其他链接器标志 -> 删除除$(inherited)
  2. cd ios && pod 更新在此处输入图像描述
于 2021-08-23T07:43:06.653 回答
1

如果您的库文件名为 libGoogleAnalytics.a 您需要输入 -lGoogleAnalytics 以确保 .a 文件按照您的预期命名

于 2013-05-29T05:52:05.013 回答
0

在 XCode 10.1 中,我必须将“库搜索路径”设置为 $(PROJECT_DIR)/.../path/to/your/library

于 2019-02-25T02:12:57.010 回答
0

以上都对我不起作用,确保 Pod 文件平台 :ios, '11.0' 与 XCODE 设置中的最小部署目标相匹配

于 2021-09-25T13:44:10.010 回答
0

对我来说这是一件愚蠢的事情:我的 mac 将文件上传到了 iCloud,这就是 Xcode 没有找到它的原因。

如果您关闭自动上传,则不会再次发生。

于 2020-07-24T15:00:49.703 回答
0

问题可能如下: SVN 由于其全局配置而忽略 .a 文件,这意味着有人没有将 libGoogleAnalytics.a 提交给 SVN,因为它没有出现在 SVN 中。因此,现在您尝试从 SVN 中检查项目,该项目现在错过了 libGoogleAnalytics.a(因为它被忽略且未提交)。当然构建失败。

您可能希望将全局忽略配置从 SVN 更改为停止忽略 *.a 文件。

或者只是手动将缺少的 libGoogleAnalytics.a 文件添加到您的 SVN 工作副本,而不是更改 SVN 全局忽略配置。

然后将 libGoogleAnalytics.a 重新添加到您的 XCode 项目并将其提交到 SVN。

于 2016-10-13T11:51:46.197 回答
0

您也可以尝试lint使用该--use-library选项,因为从 v0.36 开始,默认情况下 cocoapods lint 库作为框架

于 2015-09-02T16:32:14.800 回答