boost :: filesystem3 :: path :: codecvt()未定义的引用

时间:2011-03-11 02:39:56

标签: c++ boost boost-filesystem

尝试使用boost文件系统3,但是当我链接时,我得到以下未定义的引用:

../myfile-g.o: In function `boost::filesystem3::path::codecvt()':
../boost/filesystem/v3/path.hpp:377: undefined reference to
`boost::filesystem3::path::wchar_t_codecvt_facet()'

我在boost中到处都是grep并且没有wchar_t_codecvt_facet()

这定义在哪里?

由于

2 个答案:

答案 0 :(得分:4)

也许您错过了链接库?当我为它而努力时,我得到了:

filesystem/v3/path.hpp:371  return *wchat_t_codecvt_facet();
filesystem/v3/path.hpp:462  static const codecvt_type *& wchar_t_codecvt_facet();

这是在macosx上提升1.44。由于函数是在头文件中定义的,因此它应该是libboost_filesystem的一部分。我不确定你正在使用什么编译器/链接器但是如果你的路径上正确使用了boost并且你正在使用g ++,那么标志-libboost_filesystem将会起作用。

答案 1 :(得分:2)

尝试为较新版本的boost库添加-lboost_filesystem