As comparison, making the same basic Windows Forms application from VS2010 C# is literally 600 kilobytes. For #1 and #2 below, I created a fresh dialog-based MFC app called “hello”. The combined project folder size is 142MB.
So I guess this question is 2-part:
1) Why are these “necessary” and so huge, for a tiny, essentially functionless, program:
hello.sdf - 61MB
hello.pch - 32MB
hello.pbd - 24MB
hello.ilk - 14MB
hello.exe - 6MB
2) Ultimately my goal is to distribute a static exe that will run on XP/2000/7/8 as well as running in Wine (for Mac/Linux systems) — would MFC or Win32 be better for this?
This will be a Forms & Dialogs app (as opposed to graphics and whatnot) and will be mostly just reading and writing to text files.
Those files are none of your concern in regards to your executable size. You don’t distribute them to your users. You’re measuring intellisense database files, the pre-compiled header file, a SQL database file, and a file used by the linker. Build a release version and look at your .exe file. That’s all that matters.