gpt4 book ai didi

c - 如何在 mingw 上使用 libcurl 和 gcc 编译应用程序

转载 作者:行者123 更新时间:2023-11-30 17:00:46 24 4
gpt4 key购买 nike

我正在尝试编译包含以下代码的 C 文件:

#include <stdio.h>
#include <stdlib.h>
#include <curl/curl.h>

int main()
{
curl_global_init( CURL_GLOBAL_ALL );
CURL * myHandle;
CURLcode result; // We’ll store the result of CURL’s webpage retrieval, for simple error checking.
myHandle = curl_easy_init ( ) ;
// Notice the lack of major error checking, for brevity
curl_easy_setopt(myHandle, CURLOPT_URL, "http://www.example.com");
result = curl_easy_perform( myHandle );
curl_easy_cleanup( myHandle );
printf("LibCurl rules!\n");
return 0;
}

当我尝试编译时:

gcc url.c -lcurl

我收到以下错误:

F:\MinGW\home>gcc url.c -lcurl
C:\Users\Ehsan\AppData\Local\Temp\ccF7doFN.o:url.c:(.text+0x8e): undefined reference to `_imp__curl_global_init'
C:\Users\Ehsan\AppData\Local\Temp\ccF7doFN.o:url.c:(.text+0x95): undefined reference to `_imp__curl_easy_init'
C:\Users\Ehsan\AppData\Local\Temp\ccF7doFN.o:url.c:(.text+0xbf): undefined reference to `_imp__curl_easy_setopt'
C:\Users\Ehsan\AppData\Local\Temp\ccF7doFN.o:url.c:(.text+0xcd): undefined reference to `_imp__curl_easy_perform'
C:\Users\Ehsan\AppData\Local\Temp\ccF7doFN.o:url.c:(.text+0xdf): undefined reference to `_imp__curl_easy_cleanup'
collect2.exe: error: ld returned 1 exit status

我下载了this distribution并将所有文件复制到 bin、include 和 lib 文件夹中。

我错过了什么?

更新


我通过使用 -lcurldll 解决了这个问题。

在我的 lib 文件夹中,我同时拥有 libcurl.alibcurldll.a

为什么用libcurl.a链接无法编译,但用libcurldll.a链接却可以正常工作?

最佳答案

您可以通过以下方式检查库名称:readelf -d [LIB_PATH]

这可以解决你的问题。

关于c - 如何在 mingw 上使用 libcurl 和 gcc 编译应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37364755/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com