Windows 실행 파일이 wsl 경로에서 파일을 찾을 수 없습니다.

Windows 실행 파일이 wsl 경로에서 파일을 찾을 수 없습니다.

WSL1을 실행 중입니다. 내 홈 디렉토리에 파일을 만들었습니다 home/username. 즉, . 내 C:\ 디렉터리에 armcc.exe라는 .exe 파일이 있습니다. Linux 셸에서 다음과 같은 것을 실행할 수 있습니다.

/mnt/c/armcc.exe /mnt/c/test/foo.c

그러나 아래에 파일을 생성하면 /home/username실행 파일이 파일에 액세스할 수 없습니다. 즉, 이 명령은 실패합니다.

/mnt/c/armcc.exe /home/username/foo.c

"no source": Error: #5: cannot open source input file컴파일러의 실행 파일에서 오류가 발생합니다 .

이는 Windows 파일 시스템이 Linux 측에 액세스할 수 없는 것 같습니다. 가능하다면 어떻게 이를 달성할 수 있습니까?

답변1

일반 Windows 프로그램은 Win32 하위 시스템을 사용하므로 Unix 경로는 처리하지 않고 Windows 경로만 처리합니다. Windows 파일 시스템에 대한 경로를 사용하면 Windows 경로로 변환됩니다.

WSL에서 파일 경로를 지정하는 방법이 있습니다.\\wsl$접두사를 사용하여. 이 Windows 구문을 사용하는 Windows 프로그램에 대해 이러한 경로를 사용해야 할 가능성이 높습니다. 그러나 모든 Windows 프로그램이 이 경로 구문을 정상적으로 처리하는 것은 아니며 일부는 드라이브 문자가 포함된 표준 경로를 매우 원하므로 모든 프로그램에서 이 구문을 사용하는 것이 불가능할 수도 있습니다.

관련 정보