You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++ CPR库安装报错 找不到cpr/cpr.h、curl/curlver.h如何解决

修复CPR库引入报错问题

核心报错原因

你遇到的两个报错本质是两个配置缺失:

  1. 编译器没有把CPR的头文件目录加入搜索路径,所以找不到cpr/cpr.h
  2. CPR底层依赖libcurl库,你没有配置libcurl的头文件、库文件路径,因此连带找不到curl的依赖头文件

修复方案(优先选方案1,对新手容错率更高)

方案1:用CMake管理项目

  • 第一步先安装libcurl依赖:Windows下推荐用vcpkg安装,执行命令vcpkg install curl:x64-windows即可;如果不用vcpkg也可以直接下载libcurl预编译二进制包,注意下载的版本要和你使用的编译器(MSVC/MinGW)、位数(32/64位)匹配。
  • 在项目根目录(和main.cpp、cpr文件夹同级的目录)新建CMakeLists.txt,写入以下内容:
cmake_minimum_required(VERSION 3.15)
project(cpr_demo)

# 指定C++标准,CPR要求至少C++17
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

# 引入CPR子目录
add_subdirectory(cpr)

# 生成可执行文件
add_executable(main main.cpp)

# 链接CPR库,CMake会自动配置所有头文件、依赖库路径
target_link_libraries(main PRIVATE cpr::cpr)
  • VSCode安装CMake Tools插件后,点击底部状态栏的「配置」「构建」「运行」按钮即可正常编译运行,不需要手动配置任何路径。

方案2:手动配置VSCode编译参数

如果不想用CMake,可以手动修改VSCode的配置文件:

  1. 打开项目.vscode目录下的c_cpp_properties.json,在includePath数组中添加两个路径:
    • CPR的头文件路径:${workspaceFolder}/cpr/include
    • 你安装的libcurl的头文件路径,例如curl放在C盘根目录就写C:/curl/include
  2. 打开同目录下的tasks.json,在编译参数的args数组中补充以下参数:
    • 头文件搜索参数:-I${workspaceFolder}/cpr/include、-IC:/curl/include(MinGW编译器),如果是MSVC编译器则写/I${workspaceFolder}/cpr/include、/IC:/curl/include
    • 库文件搜索参数:-LC:/curl/lib(MinGW)或/libpath:C:/curl/lib(MSVC)
    • 链接库参数:-lcurl、-lcpr(MinGW)或curl.lib、cpr.lib(MSVC)
  • 注意提前编译好CPR和libcurl的静态/动态库,放在对应的lib路径中,否则会出现链接报错。如果用动态库,运行时需要把cpr.dll和curl.dll放到可执行文件同目录下。

内容的提问来源于stack exchange,提问作者BlackdestinyXX

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 15:45:02