不想说话(努力写buging) 2023-01-18 21:56 采纳率: 83.3%
浏览 139
已结题

C语言curl静态库

编译文件:https://wwwk.lanzouf.com/ifcAO0lcvi1e
大一,水平低下,勿喷,求解决

C语言curl静态库发送QQ邮箱邮件报错(要求只能用dev-c)
Windows环境 Dec-C++ 5.10
C语言代码
#include <stdio.h>
#include "curl/curl/curl.h" 
void send_verification_code(const char* email, const char* code) {
    CURL *curl;
    CURLcode res;
    char post_data[256];
    sprintf(post_data, "from=example@qq.com&to=%s&subject=Verification Code&body=Your verification code is %s.", email, code);
    curl_global_init(CURL_GLOBAL_ALL);
    curl = curl_easy_init();
    if (curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "smtp://smtp.qq.com:25");
        curl_easy_setopt(curl, CURLOPT_USERNAME, "email");
        curl_easy_setopt(curl, CURLOPT_PASSWORD, "password");
        curl_easy_setopt(curl, CURLOPT_MAIL_FROM, "email");
        curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, email);
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, post_data);
        res = curl_easy_perform(curl);
        if (res != CURLE_OK)
            printf("curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
        curl_easy_cleanup(curl);
    }
    curl_global_cleanup();
}

int main(void) {
    send_verification_code("emil", "code");
    return 0;
}


Dev-C++报错
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0xfe): undefined reference to `__imp_curl_global_init'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x107): undefined reference to `__imp_curl_easy_init'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x146): undefined reference to `__imp_curl_easy_setopt'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x170): undefined reference to `__imp_curl_easy_setopt'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x19a): undefined reference to `__imp_curl_easy_setopt'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x1c4): undefined reference to `__imp_curl_easy_setopt'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x1ee): undefined reference to `__imp_curl_easy_setopt'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x218): more undefined references to `__imp_curl_easy_setopt' follow
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x22b): undefined reference to `__imp_curl_easy_perform'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x24b): undefined reference to `__imp_curl_easy_strerror'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x26d): undefined reference to `__imp_curl_easy_cleanup'
C:\Users\10929\Desktop\118\main.o    main.c:(.text+0x276): undefined reference to `__imp_curl_global_cleanup'
c:\program files (x86)\dev-cpp\mingw64\x86_64-w64-mingw32\bin\ld.exe    main.o: bad reloc address 0x0 in section `.pdata'
C:\Users\10929\Desktop\118\collect2.exe    [Error] ld returned 1 exit status
25        C:\Users\10929\Desktop\118\Makefile.win    recipe for target '项目1.exe' failed


# Project: 项目1
# Makefile created by Dev-C++ 5.10

CPP      = g++.exe
CC       = gcc.exe
WINDRES  = windres.exe
OBJ      = main.o
LINKOBJ  = main.o
LIBS     = -L"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib" -L"C:/Program Files (x86)/Dev-Cpp/MinGW64/x86_64-w64-mingw32/lib" -static-libgcc -L"C:/Users/10929/Desktop/118/curl/curl" ../WinMM.Lib ../Wldap32.Lib ../WS2_32.Lib ../AdvAPI32.Lib curl/libcurl.lib
INCS     = -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/x86_64-w64-mingw32/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.8.1/include" -I"C:/Users/10929/Desktop/118/curl/lib"
CXXINCS  = -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/x86_64-w64-mingw32/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.8.1/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.8.1/include/c++" -I"C:/Users/10929/Desktop/118/curl/lib"
BIN      = 项目1.exe
CXXFLAGS = $(CXXINCS) 
CFLAGS   = $(INCS) -L"curl/lib"
RM       = rm.exe -f

.PHONY: all all-before all-after clean clean-custom

all: all-before $(BIN) all-after

clean: clean-custom
    ${RM} $(OBJ) $(BIN)

$(BIN): $(OBJ)
    $(CC) $(LINKOBJ) -o $(BIN) $(LIBS)

main.o: main.c
    $(CC) -c main.c -o main.o $(CFLAGS)

路径

img

img

Dev-c设置

img

img

img

  • 写回答

4条回答 默认 最新

  • X-道至简 2023-01-19 18:36
    关注

    你这样改一下试试,假设c:/xxx/curl/lib目录下面包含 libcurl.lib

    原始:LIBS     = -static-libgcc -L"C:/Users/10929/Desktop/118/curl/curl" curl/libcurl.lib
    ====》改成:LIBS     = -static-libgcc -L"c:/xxx/curl/lib" libcurl.lib
    
    原始:CFLAGS   = $(INCS) -L"curl/lib"
    ====》改成:CFLAGS   = $(INCS) -L"c:/xxx/curl/lib"
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月20日
  • 已采纳回答 1月20日
  • 修改了问题 1月19日
  • 修改了问题 1月18日
  • 展开全部

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么