Visual Studio Code Ubuntu环境引入fmt/printf.h提示cannot open source file错误求解
问题原因
Windows环境下你已经预先安装了fmt库并完成了路径配置,切换到Ubuntu后系统缺少fmt库的安装,或者头文件路径没有被添加到编译搜索路径中,因此无法找到对应头文件。
解决步骤
- 优先使用Ubuntu官方源安装稳定版fmt库,执行命令:
安装完成后fmt头文件会被放置到系统默认搜索路径sudo apt update && sudo apt install libfmt-dev/usr/include下,直接就能被编译器识别。 - 如果需要使用最新版fmt,可手动编译安装:
- 拉取源码并进入目录:
git clone https://github.com/fmtlib/fmt.git && cd fmt - 执行编译安装流程:
手动安装的头文件默认存放路径为mkdir build && cd build cmake .. make -j$(nproc) sudo make install/usr/local/include,属于系统默认搜索路径,正常无需额外配置。 - 拉取源码并进入目录:
- 若安装完成后VS Code仍提示找不到头文件,修改工作区
.vscode/c_cpp_properties.json配置,在includePath字段中添加对应头文件路径即可:"includePath": [ "${workspaceFolder}/**", "/usr/include/**", "/usr/local/include/**" ] - 编译链接阶段需要添加fmt库的链接参数,比如使用g++编译时命令需补充
-lfmt,示例:g++ your_code.cpp -o output -lfmt
内容的提问来源于stack exchange,提问作者iamgroot
相关产品推荐
相关产品推荐

