views:

286

answers:

1

I'm having the following issue just trying to compile/run some of the example programs with the Boost Filesystem Library. I'm using MS-Visual C++ with Visual Studio .NET (2003).

I've installed the Boost libraries, version 1.38 and 1.39 (just in case there was a version problem) using the BoostPro installers.

If I just try to include /boost/filesystem/operations.hpp I receive the following error:

\boost_1_38\boost\system\error_code.hpp(230) : error C2039: 'type' : is not a member of 'boost::enable_if<boost::system::is_error_condition_enum<Cond,boost::detail::enable_if_default_T>'

Any help is greatly appreciated. Thank you!

A: 

This sounds like SFINAE not working -- which could be a problem specific to VS 2003. I suggest you edit the constructor defined on that line to not have that second parameter. It might lead to less useful error messages, but should not break anything (given that there's no other 1-argument constructor.

Vladimir Prus
Well, more errors abound...So I tried under VS-2008, and instead get Error 4 error C2504: 'boost::enable_if_does_not_work_on_this_compiler<T>' : base class undefined c:\data\thirdparty\c++\boost_1.38\boost_1_38\boost\utility\enable_if.hpp 101
John Miller