먼저, 이게 나온게..
전처리 경로의 파일을 찾다 나온것인데...
상대 경로로 지정될때, 파일을 찾을 수 없다고 한다...
그런데 260자가 넘어가도 경로를 지정하면 잘 된다.
../ | ./ 와 같은 슬래시 및 마침표를 적용한 것은 사용할 수 없다는 것이 MS의 설명이다.
최대 경로가 260자가 넘어가면 접두어에 \\?\ 이 사용되며 이것이 적용된 이상 슬래시와 마침표는 사용할 수 없다..
https://learn.microsoft.com/ko-kr/windows/win32/fileio/maximum-file-path-limitation?tabs=registry
이를 풀어주는 것은 쉽게 찾을 수 있듯이 레지스트리 값을 풀어주어 최대 경로 길이를 제한해주면 된다.
이것은 찾아보면 쉽게 할 수 있다.
실제로 260자가 넘어가는 경로가 어떻게 되는지 CMD로 확인하면 아래와 같다.
CMD에서 해당 경로에 절대 엑세스할 수 없고 접두어로 \\?\ 을 사용해야 한다.
아 CMD 에서는 UNC 경로를 지원하지 않으니 파워쉘로 실행하면 해당 커맨드가 작동한다.
파워쉘로 확인해보면, \\?\ 접두사가 붙은 경로는 슬래시 등의 디렉토리 상대 경로를 지원하지 않으므로 실패한다.
하지만, 그런 경우가 아니라면 아래 처럼 cd 명령어가 올바르게 작동하는 것을 확인할 수 있다.
다음엔 이 이슈를 해결해보도록 한다.
'빨간색 에러들' 카테고리의 다른 글
[Windows C++] Visual Studio에서 긴 경로 제한 해제하기 with CMake (0) | 2023.09.04 |
---|---|
MSVC: D8040: 자식 프로세스를 만들거나... (0) | 2023.08.20 |
[STACKOverflow] Visual Studio 스택 크기 늘리기, Cmake 적용 (0) | 2022.07.24 |
[Visual Studio] error: lnk1112 module machine type x64.... (0) | 2022.05.25 |
[C++] 비정적 맴버 참조는 특정... / 형식 이름을 사용할 수 없습니다. / 추상 클래스 개체 (0) | 2022.05.17 |