【发布时间】:2015-12-23 05:44:47
【问题描述】:
我在编译使用 libcurl 的程序时遇到问题。
我使用的环境是 VM 上的 CentOS 6.6,我收到的错误表明该库有:
- 未正确安装或
- 找不到。
我做了一个
-
sudo yum install libcurl后跟一个 -
sudo yum install libcurl-devel后跟一个 sudo yum update
似乎curl.h 已放在/usr/include/curl 下,这似乎是正确的,所以我不确定为什么会发生这种情况。
值得注意的是,一个带有#include <curl/curl.h>的测试程序正在编译中。
另外,当没有安装 libcurl-devel 时(只有 libcurl 安装了),
- gcc 抱怨找不到
curl.h,不出所料, - 正如预期的那样,
/usr/include/下也没有 curl 目录, - 然而 libcurl 确实如预期的那样在
/usr/bin/下安装了一个 curl 文件。
在 Ubuntu 中我只需要安装 libcurl-openssl
一些示例 gcc 错误:
$gcc new.c -lcurl
new.c: In function ‘main’:
new.c:74: error: ‘CURLOPT_MAIL_FROM’ undeclared (first use in this function)
new.c:74: error: (Each undeclared identifier is reported only once
new.c:74: error: for each function it appears in.)
new.c:81: error: ‘CURLOPT_MAIL_RCPT’ undeclared (first use in this function)
【问题讨论】:
-
您的程序中是否包含
curl.h? -
如果是,检查 curl.h 是否真的包含
CURLOPT_MAIL_FROM和CURLOPT_MAIL_RCPT。如果不是,您可能只是使用了错误的 curl 版本。 -
我做了
#include <curl/curl.h> -
似乎这些在 curl.h 中不存在 - 我不认为您可以建议正确的版本?如前所述,我在 ubuntu 中使用 libcurl-openssl
-
或许你可以尝试执行
apt-get show libcurl-openssl在运行框上找到正确的版本