Существует некоторая STL (например, от Apache - STDCXX, например), которая поставляется с несколькими локалями. Но в других ситуациях локаль зависит только от системы.
Если вы могли бы использовать имя "ru_RU.UTF-8" в одной операционной системе, это не значит, что другие системы имеют такое же имя для этой локали. Debian и windows, вероятно, имеют другие имена, и по этой причине у вас есть исключение времени выполнения.
Вы должны установить желаемые локали в системе раньше. Или используйте STL, который уже имеет эту локаль.
Мои центы ...