Boost logo

Boost :

From: Jan Hermelink (Jan.Hermelink_at_[hidden])
Date: 2005-07-20 03:42:56


This is not (yet) a review, but I use your filesystem library in several
unicode projects and am very interested in the wide char implementation.
I have tried wpath and wpath_directory_iterator with two projects and
run in several minor problems:

- Building
I can't build the DLLs on my system (Windows XP SP2, VC 7.1):
  path.cpp(51) : error C2491: 'boost::filesystem::wpath_traits::imbue' :
  definition of dllimport function not allowed

Static builds run fine.

- fstream.hpp:
  Declaration of function narrow_path(const std::wstring & file_ph, ...)
If several filesystem fstream objects are declared in different
translation units, the linker complains this symbol as multiple defined.

Adding an inline specifier helps as workaround.

- fstream.hpp:
  Implementation of function narrow_path(const std::wstring & file_ph,
...)
This function doesn't work at all on my system, it returns always the
empty string. Why is this 8.3 conversion needed, can this work on NTFS
reliable?

Replacing the current implementation thru a simple narrow conversion
helps as workaround.

- is_symlink()
Why isn't this function implemented on Windows? A NTFS junction is
symlink, isn't it?

After fixing the above problems the library seems to run fine.

Thank you for your work!

Jan


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk