Task #2169

OS X 10.8 dependency computation

Added by Alex Afanasyev over 6 years ago. Updated over 5 years ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:


Create a wiki page for the issue. I'm putting a straw-man text here.

OS X 10.8 by default uses libstdc++ from gcc 4.2.1, which does not support C++11 features. ndn-cxx, NFD, NLSR, etc. are selecting the correct STL library using -stdlib=libc++. However, all dependencies (boost, cryptopp, protoc, log4cxx) needs to be compiled with the same STL library, otherwise code will not compile.

I couldn't find an easy way to do it with macrports. The following steps assume that homebrew is used:

The following ports are necessary to compile ndn-cxx, NFD, NLSR, repo-ng:

  • autoconf
  • automake
  • libtool
  • pkg-config
  • readline
  • sqlite
  • boost (C++)
  • cryptopp (C++)
  • log4cxx (C++)
  • protobuf (C++)

All C++ ports needs to be configured in C++11 model (with --c++11 flag):

brew update
brew install boost --c++11
brew install cryptopp --c++11
brew install log4cxx --c++11
brew install protobuf --c++11

Updated by Junxiao Shi over 6 years ago

User shouldn't be expected to perform manual edits.
Use sed to automate the edits.

A concern of this method is that it may break other ports that depend on them and need libstdc++.

An alternate is to duplicate those ports (boost11 protobuf11 crypto11 p log4cxx11) with new port definition.


Updated by Alex Afanasyev about 6 years ago

  • Assignee deleted (Alex Afanasyev)

I'm not planning to work further on this issue. I would even remove 0.3 version target, as it is just documentation issue (for not that important platform)


Updated by Alex Afanasyev over 5 years ago

  • Description updated (diff)

Updated by Junxiao Shi over 5 years ago

  • Target version changed from v0.3 to Unsupported
  • Start date deleted (11/12/2014)

OS X 10.11 El Capitan is released on Sep 30, 2015.
Per NDN platform policy, OS X 10.8 is no longer supported.

Therefore, target version is changed to Unsupported.


Updated by Alex Afanasyev over 5 years ago

  • Status changed from New to Closed
  • Assignee set to Alex Afanasyev
  • % Done changed from 0 to 100

Also available in: Atom PDF