在Atom中使用g++编译C++代码报错:无此文件或目录
编译报错解决方法
该报错属于路径不匹配问题,和你编写的C代码逻辑无关,是g无法在执行命令的工作路径下找到对应源文件导致,可按以下步骤排查解决:
- 确认文件真实存储信息
首先检查你编写的代码是否确实保存到了/mnt/c/Users/User/Documents/assignment/路径下,文件名是否严格为hello.cpp。注意WSL/Linux环境下路径大小写敏感,若文件实际名为Hello.cpp/hello.CPP都会被识别为不同文件,导致查找失败。 - 切换工作路径后执行编译
打开终端后先执行cd命令切换到源文件所在文件夹:
切换完成后执行cd /mnt/c/Users/User/Documents/assignment/ls命令查看当前路径下的文件列表,确认hello.cpp存在后再执行编译命令:
编译完成后执行g++ hello.cpp -o hello./hello即可运行程序。如果不想切换路径,也可以直接写全文件的绝对路径编译:g++ /mnt/c/Users/User/Documents/assignment/hello.cpp -o hello - 适配Atom内置终端的配置
如果你是在Atom的内置终端中执行编译,大概率是终端插件的默认工作路径没有匹配到当前文件的保存目录。你可以在Atom设置中找到对应终端插件的配置项,将默认工作路径修改为「当前打开文件所在目录」,之后打开内置终端会自动切换到对应路径,无需手动执行cd命令。
额外提示:你当前的C++代码缺少iostream头文件引入,路径问题解决后编译还会触发语法错误,在代码第一行加上
#include <iostream>即可正常编译运行。
内容的提问来源于stack exchange,提问作者Jaedan Persaud
相关产品推荐
相关产品推荐

