5 ms·
The difference is that on Linux, "compile my program in debug mode" does not enable libstdc++'s expensive (and incompatible) mode.
by o11c 2y ago
The difference is that on Linux, "compile my program in debug mode" does not enable libstdc++'s expensive (and incompatible) mode.
- forrestthewoods 2y agoMy point is the real difference is the implementation of the three libraries. It's not a fundamental platform difference.
- gpderetta 2y agoThe expectation that debug libraries are are compiled with ABI changing flags is, while not fundamental, an significant platform difference. Historically this might be because MSVC didn't even preserve the standard library ABI across versions (although it has done so for the last 10 years at least), so there were little ABI stability expectations.
- jcelerier 2y ago> The difference is that on Linux, "compile my program in debug mode" "Linux" does not have a "compile my program in debug mode" magic toggle (or Release or whatever for what it's worth). Different IDEs and toolchains may have different defaults and expectations. "g++ -g" is not debug mode, it's debug symbols.