c++ - 试图让 curl 在 c++ linux 和 GDB 中工作

标签 c++ linux curl gdb raspberry-pi

我已经尝试了所有可以在网上找到的方法,但我一直收到错误消息“未定义对‘curl_global_init’的引用”

有几个地方建议将 -lcurl 放在命令行中,但这是通过 Visual GDB/Visual Studio 完成的,我不确定该放在哪里。我试了十几个地方都没有运气。

#include "curl/curl.h"
int main(int argc, char *argv[])
{
CURL *curl;
   CURLcode res;

   curl_global_init( CURL_GLOBAL_ALL );
}

我可以右键单击 curl_global_init 并毫无问题地转到定义。 此外,我可以在我的树莓派上从命令行正常运行 curl。

提前致谢,在这个问题上停留的时间太长了。

最佳答案

这是一个链接问题。

当您右键单击并转到函数或变量的定义或声明时,这是基于 IDE 而不是编译器。编译器必须非常严格地链接到 cURL 库,无论是在命令行中作为编译器标志还是在您的 IDE 设置中(为您创建命令行)。

当我在 Win7 上使用 MVS10 时,我最初遇到了类似的问题。许多关于如何将 curl 正确链接到您的 IDE 的指南非常具体,在许多情况下并不适合您的情况。 我强烈建议您从最新的 curl 文件编译您自己的库,无论它是静态的还是动态的。动态是最容易编译的(我发现),在你必须链接你的 DLL 之前做一个基本的编译。如果没有 DLL 的链接,该程序将不会运行,但可能仍会编译。 祝你好运!

关于c++ - 试图让 curl 在 c++ linux 和 GDB 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19392751/

相关文章:

c++ - bad_variant_access 不起作用

javascript - 如何将此curl 转换为jQuery AJAX POST?

curl - 如何从 jenkinsfile 中的 curl 获取响应代码

c++ - Boost C++ http post 获取服务 : How to make more than one run on same port?

c++ - 如何从另一个打开的表单读取和更改主表单内的变量?

C++ 调试 Penumbra 游戏,tidtable.c 中的错误

linux - 终端被我的 .sh 字符编码吓坏了。我能做些什么?

xcode - 如何使用 bash 查找文本字符串 --> "PROVISIONING_PROFILE[sdk=iphoneos*]"<--这个字符串有很多特殊字符

c++ - 调用 std::thread.detach 时的意外行为

php - 使用 PHP、curl 解码从 Flickr API 返回的 json 字符串