実際にcodecvtを使ってマルチバイト文字列<=>ワイド文字列
の変換やってみたけど変換に失敗。

環境は
vinelinux3.2
gcc3.3.2
libstdc++3.3.2
glibc2.3.3

std::codecvt::in,outの返り値がerrorになってしまうのです。
ttp://hw001.gate01.com/eggplant/tcf/cpp/strcnv.hpp
の関数を使用しても同様でした。

mbstowcsとかwcstombsは正常に動作するのですけどね。