
Johan Ström wrote:
Thanks guys! Now it is working fine on Linux (with LANG=en_US.utf8 at least). I put my utf8_facet inside a shared_ptr that lives throught my app so thats solved. However, on OS X it still wont work, not sure why.. When I do fs::wpath_traits::imbue( loc ); I get an "locale::facet::_S_create_c_locale name not valid" exception. I'm running with LANG=en_US.UTF-8 here, which (according to locale in console) is fine.
Was looking through the boost archives and decided to reply this old message. I had similar (somewhat) problems with boost::filesystem::wpath (Linux x86, gcc 3.4.6 compiler) and locale interaction. The UTF-8 facet from the boost itself worked fine for me but somehow I couldn't get it working with the standard system environment locale. I would just failed to convert strings and valgrind said that there are some uninitialized reads or something. I investigated it but no luck. I stopped my investigations when we decided to limit our product support to UTF-8 locales only. Not sure this helps - just for a record. You can search the boost archives for messages from me with "filesystem" in the subject - there is pretty detailed description of the problem there. -- Alexei Alexandrov