mingw32-make
C 프로젝트를 빌드하기 위해 PowerShell에서 직접 명령을 실행하고 있습니다 .
그러나 출력이 완전히 엉망이 되는 경우도 있습니다. 예를 들어 한 줄의 일부가 다른 줄에 삽입되는 등의 경우가 있습니다. 때로는 이로 인해 출력을 읽는 것이 불가능해집니다.
두 번의 실행 사이에 출력이 일관된 것 같습니다. 즉, 특정 프로젝트 상태의 경우 항상 동일한 엉망인 출력이 생성됩니다.
출력을 txt 파일로 덤프해 보았습니다 mingw32-make > log.txt
. 텍스트 파일에 명확한 출력이 표시되지만 모든 오류 보고서가 누락되었습니다. 실제 오류 보고 없이 "컴파일 오류"만 표시됩니다.
이 문제를 어떻게 해결할 수 있습니까?
답변1
mingw32-make
당신이 설명하는 것은 둘 이상의 스트림으로 보내는 것 같습니다 . 이와 같은 출력을 혼합하는 것은 혼합 Write-Host
하고 Write-Output
호출할 때 발생하는 것과 유사합니다. 첫 번째는 [거의] 호스트로 직접 이동하지만 두 번째는 성공 스트림으로 이동하고그 다음에호스트에게.
가장 간단한 솔루션은 모든 스트림을 파일로 리디렉션하거나 원하는 스트림과 Tee-Object
결과를 화면과 파일에 결합하는 것입니다. [이를 드러내고 웃다]
자세한 내용을 살펴보세요 Get-Help about_Redirection
.
나는 당신이 mingw32-make 2>&1 > log.txt
. 특정 유틸리티를 테스트할 방법이 없기 때문에 특정 스트림을 지정할 수 없습니다. 나는 mingw32-make *> log.txt
모든 스트림을 리디렉션하기 위해 갔을 것이라고 생각합니다 . 당신의 패턴은 과도한 일을 피한다는 점에서 더 좋습니다.