728x90
VSCODE로 컴파일을 하다가 터미널에 갑자기 이런 식으로 뜨면서 넘어가지를 않았다.
gcc.exe: error (경로): No such file or directory
gcc.exe: fatal error: no input files compilation terminated.
읽어보니까 경로부분에 역슬래시()가 전부 다 빠져있었다. 예를 들면,
C:\Users\aaa\Desktop\aaa\cmania\hell\hellc.exe라고 돼야 할 것이
C:UsersaaaDesktopaaacmaniahellhellc.exe 이런식으로 되어 있던 것이다.
문제를 해결하는데 이틀이나 걸렸다.
방법
- git-bash에서 파일 경로 구분자를 /가 아니라 \로 사용하기 때문에 기본 터미널을 powershell로 바꾸면 해결이 된다는 사람이 있었다.
- 다른 방법은 task.json의 내용을 수정하는 것이다.
기존 코드
//C 컴파일
{
"label": "save and compile for C",
"command": "gcc",
"args": ["${file}", "-o", "${fileDirname}\\${fileBasenameNoExtension}"],
"group": "build",
"problemMatcher": {
"fileLocation": ["relative", "${workspaceRoot}"],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
},
// 바이너리 실행(Windows)
{
"label": "execute",
"command": "cmd",
"group": "test",
"args": [
"/C", "${fileDirname}\\${fileBasenameNoExtension}"
]
}
터미널이 git-bash라면 args에 있는 ${file} 때문에 경로가 windows에서만 작동하는 백 슬래시로 나오기 때문에 문제가 생긴다고 한다.
그래서 작은 따옴표로 백 슬래시로 된 경로를 감싸면 해결이 된다더라.
바이너리 실행 부분의 command에 cmd를 없애버리고 args 부분도 작은따옴표로 감싼다. (경로에 한글이 있다면 영어로 바꿔준다.)
바꿔줄 코드
//C 컴파일
{
"label": "save and compile for C",
"command": "gcc",
"args": ["'${file}'", "-o", "'${fileDirname}\\${fileBasenameNoExtension}'"],
"group": "build",
"problemMatcher": {
"fileLocation": ["relative", "${workspaceRoot}"],
"pattern": {
"regexp": "^(.*):(\\d+):(\\d+):\\s+(warning error):\\s+(.*)$",
"file": 1,
"line": 2,
"column": 3,
"severity": 4,
"message": 5
}
}
},
//바이너리 실행(Windows)
{
"label": "execute",
"command": "",
"group": "test",
"args": ["'${fileDirname}\\${fileBasenameNoExtension}.exe'"]
}
]
}
728x90
'문제 해결' 카테고리의 다른 글
[MySQL] Access denied for user '유저아이디'@'localhost' (using password: YES) 에러 문제 해결 방법 (0) | 2022.11.16 |
---|---|
[MySQL] MySQL installer 포스번호 설정 오류 the specified port already in use (0) | 2022.11.02 |
인텔리제이(Intelij) 한글 깨짐 인코딩 에러 해결 방법 (0) | 2022.04.02 |
파이썬 pip 명령어 에러 문제 해결법 (0) | 2022.01.19 |
파이썬/ SyntaxError: Non-UTF-8 code starting with '\xbf' in file 에러 해결 (0) | 2022.01.19 |