为什么我的 libcurl c 程序在 Windows 上失败?

问题描述 投票:0回答:0

我执行了以下步骤来下载 libcurl:

  1. https://curl.se/windows/ 下载 libcurl(32 位版本)
  2. 将文件夹解压到 %USERPROFILE%\Downloads(重命名为“curl”)

我写了以下C程序:

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

int main()
{
    printf("Running...");
    CURLcode code = curl_global_init(CURL_GLOBAL_ALL);
    printf("%d\n", code);
    if (code != 0)
        return 1;
    char *version = curl_version();
    printf(version);
    curl_global_cleanup();
    printf("Done\n");
    return 0;
}

并使用 MinGW(32 位)gcc 编译它:

gcc libcurl_test.c -o libcurl_test.exe -I %USERPROFILE%\Downloads\curl\include -L %USERPROFILE%\Downloads\curl\lib -lcurl

echo %errorlevel%
0

当我尝试运行该程序时,会发生这种情况:

.\libcurl_test.exe

echo %errorlevel%
-1073741515

我期待这个:

.\libcurl_test.exe
Running...0
Done

echo %errorlevel%
0

当我不调用 curl 函数时会发生什么:

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

int main()
{
    printf("Running...");
    // CURLcode code = curl_global_init(CURL_GLOBAL_ALL);
    // printf("%d\n", code);
    // if (code != 0)
    //     return 1;
    // char *version = curl_version();
    // printf(version);
    // curl_global_cleanup();
    printf("Done\n");
    return 0;
}
gcc libcurl_test.c -o libcurl_test.exe -I C:\Users\Caleb\Downloads\curl\include -L C:\Users\Caleb\Downloads\curl\lib -lcurl

echo %errorlevel%
0

.\libcurl_test.exe
Running...Done

echo %errorlevel%
0

有什么我想念的吗?

c windows curl libcurl
© www.soinside.com 2019 - 2024. All rights reserved.