Diskspace #22957

Closed
opened 2026-01-31 08:28:24 +00:00 by claunia · 5 comments
Owner

Originally created by @inoperable on GitHub (Feb 20, 2025).

Windows Terminal version

No response

Windows build number

No response

Other Software

No response

Steps to reproduce

Pushed the Build button

Expected Behavior

Sane disk space usage

Actual Behavior

I was literally baffled after Visual Studio told me I runt out of Disk Space when compiling the Terminal.
After closer examination the obj take ~ 60GB for compiling the App.

Does one really need 60GB to compile the Windows Terminal?

Originally created by @inoperable on GitHub (Feb 20, 2025). ### Windows Terminal version _No response_ ### Windows build number _No response_ ### Other Software _No response_ ### Steps to reproduce Pushed the Build button ### Expected Behavior Sane disk space usage ### Actual Behavior I was literally baffled after Visual Studio told me I runt out of Disk Space when compiling the Terminal. After closer examination the obj take ~ 60GB for compiling the App. Does one really need 60GB to compile the Windows Terminal?
claunia added the Needs-TriageIssue-BugNeeds-Attention labels 2026-01-31 08:28:24 +00:00
Author
Owner

@DHowett commented on GitHub (Feb 20, 2025):

Unfortunately, it does take rather a lot of disk space. The biggest cost during the build is the precompiled headers produced in projects that consume C++/WinRT.

There have been a few efforts to reduce the sheer disk space cost (e.g. using C++ modules or having one shared precompiled header project,) but all of them come with other tradeoffs:

  • modules cannot be used as they are apparently not mature or supported by the MSBuild C++ build system
  • precompiled header projects break the developer inner loop and cause incidental recompilation of the rest of the project.

I'm somewhat surprised at the 60 GiB figure, though. My final objects directory for a single architecture and configuration combo consumes only 20 GiB, with bin adding only 2 more.

Can you share more about your build environment? What are the largest files there? Are you building all three architectures/?

@DHowett commented on GitHub (Feb 20, 2025): Unfortunately, it does take rather a lot of disk space. The biggest cost during the build is the precompiled headers produced in projects that consume C++/WinRT. There have been a few efforts to reduce the sheer disk space cost (e.g. using C++ modules or having one shared precompiled header project,) but all of them come with other tradeoffs: - modules cannot be used as they are apparently not mature or supported by the MSBuild C++ build system - precompiled header projects break the developer inner loop and cause incidental recompilation of the rest of the project. I'm somewhat surprised at the 60 GiB figure, though. My final objects directory for a single architecture and configuration combo consumes only 20 GiB, with `bin` adding only 2 more. Can you share more about your build environment? What are the largest files there? Are you building all three architectures/?
Author
Owner

@inoperable commented on GitHub (Feb 20, 2025):

@DHowett Thank you for the quick answer, after looking into subdirs its split into 3 x 20GB so it comes to your count, summed up its 60GB because of Debug/Release/Arch combined.

Still, there is something seriously wrong with tooling if you need 20GB+ to compile a terminal emulator (allthough I get this falls outside of the project itself)

@inoperable commented on GitHub (Feb 20, 2025): @DHowett Thank you for the quick answer, after looking into subdirs its split into 3 x 20GB so it comes to your count, summed up its 60GB because of Debug/Release/Arch combined. Still, there is something seriously wrong with tooling if you need 20GB+ to compile a terminal emulator (allthough I get this falls outside of the project itself)
Author
Owner

@DHowett commented on GitHub (Feb 20, 2025):

I know. It sucks.

@DHowett commented on GitHub (Feb 20, 2025): I know. It sucks.
Author
Owner

@inoperable commented on GitHub (Feb 20, 2025):

@DHowett you can del this, nothing to be done about it and no need to add to the pile

@inoperable commented on GitHub (Feb 20, 2025): @DHowett you can del this, nothing to be done about it and no need to add to the pile
Author
Owner

@DHowett commented on GitHub (Feb 20, 2025):

Honestly, I want to keep it around because it creates an evidence trail! "It's not just Microsoft developers who hate this - contributors do too!" 🙂

@DHowett commented on GitHub (Feb 20, 2025): Honestly, I want to keep it around because it creates an evidence trail! "It's not just Microsoft developers who hate this - contributors do too!" 🙂
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#22957