【问题标题】:/usr/bin/ld: cannot find -lcurl/usr/bin/ld: 找不到 -lcurl
【发布时间】:2011-02-27 22:27:39
【问题描述】:

我正在尝试在 Ubuntu 10.10 上安装 curl (curb) 的 ruby​​ gem,但在安装过程中,我收到错误:

/usr/bin/ld: cannot find -lcurl

但是 curl 已经安装了! apt-get install curl 说我有最新版本。也没有 curl-dev。

我总是遇到这类错误,使用 curl、使用 libxml、使用 readline,我不知道发生了什么。我安装的 Ubuntu 出了点问题,但我不知道是什么问题,我不知道在哪里寻找,我不知道要谷歌搜索什么,也不知道如何修复它。

我们将不胜感激。

编辑:这是在我的 libcurl 的 /usr/lib 目录中:

lrwxrwxrwx  1 root root      19 2011-02-18 23:15 libcurl-gnutls.so.3 -> libcurl-gnutls.so.4
lrwxrwxrwx  1 root root      23 2011-02-18 23:15 libcurl-gnutls.so.4 -> libcurl-gnutls.so.4.2.0
-rw-r--r--  1 root root  339880 2010-06-23 09:07 libcurl-gnutls.so.4.2.0
lrwxrwxrwx  1 root root      12 2011-02-18 23:14 libcurl.so.3 -> libcurl.so.4
lrwxrwxrwx  1 root root      16 2011-02-18 23:14 libcurl.so.4 -> libcurl.so.4.2.0
-rw-r--r--  1 root root  360904 2010-06-23 09:07 libcurl.so.4.2.0

【问题讨论】:

  • /usr/lib/libcurl.* 是否存在?安装 libcurl3 包怎么样?
  • libcurl3 已安装,我已更新我的问题以显示我的 /usr/lib 目录。

标签: linux ubuntu linker


【解决方案1】:

您需要 libcurl3-dev 软件包。 Curl 只是命令行实用程序。该库是 libcurl3,它有一个 -dev 包。 (它似乎是 Maverick 中的一个虚拟包,重定向到 libcurl4-openssl-dev,但这应该仍然有效,否则将不会提供虚拟包。)事实上,从您的 lib 目录中,我可以看到 libcurl3 只是一个符号链接到 libcurl4。 (libcurl3-dev 以后可能无法使用,所以直接使用libcurl4-openssl-dev)。

【讨论】:

  • 是的,正是我需要的!因此,检查 /usr/lib 并搜索具有正确版本号的软件包并添加 -dev。非常感谢!
  • 我也遇到过类似的情况,澄清一下,我所要做的就是安装 libcurl4-openssl-dev,因为没有 libcurl3-dev 包 (12.04 x64)
  • 这个成功了,谢谢!现在,我正在与我正在尝试安装的这个旧软件进行下一个包冲突。谢谢!
猜你喜欢
  • 2021-05-07
  • 1970-01-01
  • 2011-07-16
  • 2012-05-17
  • 2020-04-14
  • 2012-03-26
  • 2018-12-13
  • 2015-09-22
  • 2020-01-19
相关资源
最近更新 更多