Reputation: 1758
this code:
boost::filesystem::is_directory("/usr/include");
work fine.
both this code:
boost::filesystem::is_directory(L"/usr/include");
throw an exception:
terminate called after throwing an instance of 'std::runtime_error'
what(): locale::facet::_S_create_c_locale name not valid
OS - Linux Mint
boost-1.43
gcc-4.6.0
Upvotes: 2
Views: 2225
Reputation: 31243
What happens that it tries to convert wide string to normal one and for this creates a locale and probably this locale is not configured in your system.
Bring output of commands:
locale
locale -a
;-)
, check if this works with ordinary compiler. Probably libstdc++ wasn't build well.Upvotes: 1