Arash Abghari wrote:
I wonder if it is possible to backport filesystem v3 to 1.40 by replacing source folder from 1.46.
In general, such an approach might cause troubles because of inter-library dependencies. Without any knowledge about the implementation of Boost.Filesystem, I can tell you that there is another way which is at least as effective and at least as easy. Keep your 1.46 installation as it is. Install the complete 1.40 tree in another directoy and build it with the option --with-libraries=filesystem set. This may overwrite your additional copy of the 1.46 headers in some system-wide directory like /usr/local/include; in that case, just re-copy it from $BOOST_1_46/boost. Alternatively, you can use custom target directory settings from the bootstrap script (refer to bootstrap --help for more information). Then, for all Boost libraries except Filesystem just keep using version 1.46. For the Filesystem library, include from $BOOST_1_40/boost and link to the library that you built when installing version 1.40. HTH, -Julian