Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#48503 closed update (fixed)

mongodb: update to 3.0.5

Reported by: moderndeveloperllc (Mark Garrett) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: mongodb

Description

Change History (6)

comment:1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… removed
Owner: changed from macports-tickets@… to ryandesign@…
Status: newassigned
Summary: [Update] Update mongodb to 3.0.5mongodb: update to 3.0.5

I'm aware of this. It did not build so I filed a bug report: https://jira.mongodb.org/browse/SERVER-19661

It seems mongodb 3.0.5 now uses C++11, which means it will no longer build for default installations on OS X 10.7 and 10.8. Will need to discuss this with the developers and make sure they're aware of the inconvenience this will cause.

comment:2 in reply to:  1 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to ryandesign@…:

It seems mongodb 3.0.5 now uses C++11, which means it will no longer build for default installations on OS X 10.7 and 10.8.

Or: it could mean that. I'd like to test it on 10.7 and 10.8 first.

comment:3 Changed 9 years ago by moderndeveloperllc (Mark Garrett)

Thanks. Looks like they are going to require C++11 from here on out as Mongo 3.x is now allowing code from that version into its codebase: https://jira.mongodb.org/browse/SERVER-19755

comment:4 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

I updated the port to 3.0.5 in r139173. I'll check the buildbot to see what happens on 10.8.

comment:5 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed

Looks like mongodb checks for this:

Checking if we are using libstdc++... yes
Checking for libstdc++ 4.6.0 or better... no
Detected libstdc++ is too old to support C++11 mode
Try building with --libc++ and --osx-version-min=10.7 or higher

Using libc++ instead of libstdc++ is something the user can do, but it has to be done for MacPorts as a whole; we can't just do it for mongodb. See LibcxxOnOlderSystems.

In r139174 I added the cxx11 1.0 portgroup to the mongodb port so that the user will now be informed of this:

Error: mongodb does not support your selected MacPorts C++ runtime. libc++ must be selected and C++-based ports built against it.
Error: Please follow the instructions on https://trac.macports.org/wiki/LibcxxOnOlderSystems.
Error: After adding the required options to macports.conf, essentially reinstall all ports like you would when switching OS X versions.
Error: Follow step 3 on https://trac.macports.org/wiki/Migration in order to do this.
Error: org.macports.configure for port mongodb returned: libstdc++ unsupported.

comment:6 Changed 9 years ago by moderndeveloperllc (Mark Garrett)

Ouch. Thanks for looking into this. Hopefully there aren't many conflicts if I switch over to libc++.

Note: See TracTickets for help on using tickets.