[SERVER-4314] Add support for boost filesystem v3 Created: 17/Nov/11  Updated: 11/Jul/16  Resolved: 11/Oct/12

Status: Closed
Project: Core Server
Component/s: Build
Affects Version/s: None
Fix Version/s: 2.3.0

Type: Improvement Priority: Major - P3
Reporter: Hillel Lubman Assignee: Andy Schwerin
Resolution: Done Votes: 14
Labels: boost, driver, filesystem
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Any


Attachments: File boost-1.50.patch    
Issue Links:
Related
is related to CXX-86 C++ driver can't compile with glibc 2.16 Closed
Participants:

 Description   

Enabling support of Boost filesystem version 3 library for MongoDB can benefit projects which already use v3 internally.



 Comments   
Comment by auto [ 11/Oct/12 ]

Author:

{u'date': u'2012-09-04T20:38:01-07:00', u'email': u'sh@lutzhaase.com', u'name': u'Sven-Hendrik Haase'}

Message: SERVER-4314 Migrate to Boost Filesystem v3, away from deprecated v2.

Original author: Sven-Hendrik Haase <sh@lutzhaase.com>
Merged by: Andy Schwerin <schwerin@10gen.com>
Signed-off-by: Andy Schwerin <schwerin@10gen.com>
Branch: master
https://github.com/mongodb/mongo/commit/b3b1949de30b5dc1bde3d91aa197a8587d17d193

Comment by Marcus D. Hanwell [ 28/Sep/12 ]

Is there any plan to make a release using Boost filesystem v3? The patch doesn't look that hackish to me, we need a solution going forward due to Boost 1.49 not working with GCC 4.7, and Boost 1.50.0 not working with MongoDB's C++ client due to filesystem v2 being dropped.

Comment by Ryan Schmidt [ 24/Aug/12 ]

I am the maintainer of mongodb in MacPorts, and I hope you can fix this issue soon. It is causing grief for my users, because in July MacPorts updated to boost 1.50.0, in which boost filesystem v2 is gone (and boost 1.51.0 has already been released). There are currently 25 MacPorts users monitoring our ticket on this issue: https://trac.macports.org/ticket/35118 . I have not tried the patch attached here because it was described as "hacky" and because it is for an earlier version of mongodb than we currently have in MacPorts.

Comment by Eric Milkie [ 11/Jul/12 ]

Filed SERVER-6411

Comment by Andy Schwerin [ 11/Jul/12 ]

It continues to compile and link against Boost 1.49, at least. However, if we're going to keep using boost::filesystem, we should really upgrade to v3.

Comment by Alex Syrnikov [ 11/Jul/12 ]

Hi all.

As I understand current version of mongo C++ driver will not compile with Boost <= 1.49 becouse https://jira.mongodb.org/browse/SERVER-6340 is fixed. But it will not link with Boost >=1.50 becouse its drop filesystem v2 support.
So now C++ driver will not compile or link with any boost package.

Comment by Sven-Hendrik Haase [ 10/Jul/12 ]

Patch against 2.0.6

Comment by Sven-Hendrik Haase [ 10/Jul/12 ]

I uploaded the somewhat hacky patch I made against version 2.0.6. It works for me and allows me to compile against boost 1.50 at least.

Comment by Sven-Hendrik Haase [ 10/Jul/12 ]

Patch against 2.0.6

Comment by Hillel Lubman [ 04/Jan/12 ]

Yes, it's about client programs linking against boost filesystem v3, to avoid need for using v2 in addition, because of the MongoDB library.

Comment by Dwight Merriman [ 04/Jan/12 ]

is the context here the C++ driver?

Generated at Thu Feb 08 03:05:37 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.