Мне не удалось скомпилировать стандартную библиотеку gcc на C++ с VC++ и наоборот.Почему почти все стандартные библиотеки C++ не переносимы (в том числе и clang, gcc и vC++)?
Почему практически все стандартные библиотеки C++ не переносятся (в том числе clang, gcc и vC++)?
Я также пробовал STLport, однако он слишком стар для поддержки C++ 11.
Я пишу свой собственный мини-STL для встроенных систем, где я не могу использовать предоставленный компилятором STL из-за его непереносимости. Значит, мне все равно.
Есть ли реализация переносной стандартной библиотеки C++?
Какие детали не удалось скомпилировать? Вы это проверили? Например, потоки C++ 11 должны быть реализованы для ОС. Файловый ввод-вывод также зависит от ОС. –
'type_info' тесно связан с компилятором, даже для двух компиляторов, работающих в одной и той же системе. Как и 'numeric_limits', и, вероятно, большая часть раздела 18. –
В прошлом были некоторые реализации кросс-компиляторов, по крайней мере, части стандартных библиотек, таких как SGI STL (считалось, что он был удален в 2000 году) и STLport (2008). Они слишком стары, чтобы быть полезными. Слишком много неприятностей смешивает ваш код с существующими библиотеками, созданными с собственной библиотекой компилятора, чтобы сделать его полезным (например, как вы можете передать 'std :: string' в библиотеку, если макет памяти или требуемое поведение для поддержания инвариантов отличаются ?). –