
OPERATIONAL DEFECT DATABASE
...

...
mongodb 3.0.0 and 3.0.1 do not compile on Mac OS X 10.6. The error is: src/mongo/bson/bsonelement.h:485:35: error: use of undeclared identifier 'strnlen' size_t size = strnlen( fieldName(), maxLen - 1 ); ^ The problem is that strnlen was added to OS X in version 10.7, so to compile on previous systems you must either not use strnlen or must provide a compatibility implementation of it. The MacPorts project's ticket about this issue is https://trac.macports.org/ticket/47119
ryandesign commented on Sat, 14 Nov 2015 10:47:00 +0000: Note that MacPorts does offer a way to use libc++ even on OS X 10.6. See https://trac.macports.org/wiki/LibcxxOnOlderSystems. So, were it not for the use of strnlen, mongodb might still be buildable on OS X 10.6 with libc++. However, it is possible there is no longer user interest in this. No complaints about the 10.7 requirement have been reported to me as mongodb package maintainer in MacPorts. acm commented on Wed, 1 Apr 2015 12:25:25 +0000: ryandesign - The cost to support older platforms is high, generally. Additionally, we wanted to be able to rely on of a modern C++ runtime. Due to Apple's freezing libstdc++ at 4.2.1 this means that we now require libc++, and that only became available in OS X 10.7 and on. I agree with you that it would be good to report when the target system does not meet our minimum requirements. We actually already do this for the C/C++ compiler and the standard library, so we are moving in this direction overall. Ideally, we would also do such a check for any third_party libraries where the user requested to use the system version instead of our vendored copy. I've filed SERVER-17836 to capture the OS detection improvement, and SERVER-17837 to capture the third party library improvement. Please let us know if there is anything more we can do for you on this issue. ryandesign commented on Wed, 1 Apr 2015 07:12:35 +0000: That is unfortunate, but if that is what you want, then you should modify the scons script so that it detects OS X acm commented on Tue, 31 Mar 2015 12:27:57 +0000: This is intentional. MongoDB 2.6 is the last version that targets OS X 10.6. MongoDB 3.0 requires OS X 10.7 or newer.
Click on a version to see all relevant bugs
MongoDB Integration
Learn more about where this data comes from
Bug Scrub Advisor
Streamline upgrades with automated vendor bug scrubs
BugZero Enterprise
Wish you caught this bug sooner? Get proactive today.