4

Hopefully this helps somebody else

Trying to compile an iOS project with Cedar BDD kept failing with no type named 'shared_ptr' in namespace 'std' error message. It was obviously a C++ error but couldn't understand why the C++ library Xcode was using didn;t have the shared_ptr type defined until I discovered the build settings of the target provides two libraries to choose from

  • libstdc++ (compiler default)
  • libc++
Joe Masilotti
  • 16,815
  • 6
  • 77
  • 87
bnduati
  • 601
  • 1
  • 8
  • 10

3 Answers3

7

selecting libc++ fixes the problem see screenshotXcode 4.4 build settings window

bnduati
  • 601
  • 1
  • 8
  • 10
3

Apple ship a very old version of libstdc++ that doesn't support C++11, so if you use libstdc++ you can't use C++11 features.

Jonathan Wakely
  • 166,810
  • 27
  • 341
  • 521
1

In xcode you must use #include <memory>, you can not use #include <memory.h>. Please check this.

Robert
  • 7,394
  • 40
  • 45
  • 64
jeff
  • 142
  • 7