Wrangler “write EOF” on Windows: 실제 해결책

발행: (2025년 12월 17일 오후 06:40 GMT+9)
4 min read
원문: Dev.to

Source: Dev.to

Problem

Windows에서 Cloudflare Wrangler(또는 Cloudflare 어댑터가 적용된 Astro)를 사용하는 개발자는 프로젝트를 시작하려 할 때 “write EOF” 라는 난해한 오류를 마주할 수 있습니다.

Investigation

  1. 초기 우회 방법 – GitHub 댓글에서 제안된 대로 install_tools.bat 를 실행하면 오류가 해결되지만, 불필요한 구성 요소가 많이 설치됩니다:

    • Python
    • Visual Studio 핵심 파일
    • 다양한 SDK 파일
  2. 목표 지향 접근 – 가장 논리적인 구성 요소는 Microsoft.VisualStudio.2022.BuildTools 로 보였습니다. 이를 winget 으로 설치:

    winget install Microsoft.VisualStudio.2022.BuildTools --override "--wait --quiet --add Microsoft.VisualStudio.Workload.VCTools"

    이 또한 오류를 해결하지만, 여전히 VS Core, 에디터 폰트, Windows SDK 일부 등 많은 추가 도구가 함께 설치됩니다.

  3. 최소 테스트 – 시스템을 정리한 뒤 남은 Microsoft 패키지는 Visual C++ 2015–2022 Redistributables(x64와 x86)뿐이었습니다. 나머지(빌드 도구 포함)를 모두 제거해도 오류가 사라졌습니다.

  4. 검증 – VC++ 재배포 패키지를 제거하면 오류가 즉시 다시 나타났고, 재설치하면 다시 해결되었습니다. 새 Windows VM에서도 VC++ 재배포 패키지만 있으면 문제가 없음을 확인했습니다. 빌드 도구, SDK, Python은 필요하지 않았습니다.

Solution

Windows에 Microsoft Visual C++ 2015–2022 Redistributable(x64와 x86)를 설치합니다.

# Microsoft에서 재배포 패키지를 다운로드하고 설치:
# https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist?view=msvc-170

이 런타임들을 설치한 뒤 Wrangler를 시작하면 정상적으로 동작하고 “write EOF” 오류가 사라집니다.

Why This Works

Wrangler는 Windows에서 Visual C++ 런타임을 필요로 하는 네이티브 Node.js 모듈에 의존합니다. 런타임이 없으면 저수준 프로세스 통신이 실패하여, 명확한 의존성 누락 메시지 대신 일반적인 “write EOF” 스트림 오류가 발생합니다. VC++ 런타임을 제공하면 이 요구 사항이 충족됩니다.

Conclusion

온라인에 떠돌아다니는 복잡한 해결책(예: install_tools.bat 실행이나 전체 Visual Studio Build Tools 설치)은 불필요하고 시스템을 어지럽힙니다. Microsoft Visual C++ 2015–2022 Redistributable(x64와 x86)만 설치하면 Windows에서 Cloudflare Wrangler의 “write EOF” 오류를 최소하고 깔끔하게 해결할 수 있습니다.

문제와 진행 과정을 간략히 정리한 내용은 제 GitHub gist에서 확인할 수 있습니다.

Back to Blog

관련 글

더 보기 »

1288일 차: 호수

!Day 1288의 표지 이미지: Lakehttps://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.ama...