openCV 2.4.3/Xcode 4.5.2/mac osx 10.8.2
Я пытаюсь открыть openCV с iOS. Я пытаюсь использовать предустановленную структуру 2.4.3 с openCV.org. Однако я получаю следующие ошибки построения проекта xcode, которые предполагают, что компилятор не знает, что он имеет дело с С++, например
#include <list>       !'list' file not found
namespace cv          !unknown type name 'namespace'
Это похоже только на следующие заголовочные файлы: 
"Opencv2/несвободные/features2d.hpp" 
"Opencv2/несвободные/nonfree.hpp" 
"opencv2/video/video.hpp" 
Если я не включу эти три файла в opencv.hpp(или где-нибудь еще), я, похоже, могу скомпилировать и использовать openCV ok. Беда в том, что мне нужны бесполезные файлы, поскольку я экспериментирую с SURF, который недавно был перенесен в незащищенный.
Это действительно двоякий вопрос (извините; -)
- Как мне убедить компилятор, что это заголовки С++?
 - который содержит заголовки, нужно ли мне использовать SURF?
 
Обновление
Я клонировал репозиторий openCV git и создал из него новую структуру. Этот подход не работал ранее, но сегодня я понял, что не использовал текущую версию CMAKE. Я использовал CMAKE 2.8.2, и это не смогло бы создать opencv для ios. Текущая версия CMAKE 2.8.10 строит ее без каких-либо проблем (требуется, чтобы объектный урок в соответствии с документами, которые говорят, что требуется CMAKE min. V2.8.8).
Теперь, когда я добавляю эту текущую сборку opencv framework в проекте Xcode, я могу включить функции2d, а также без ограничений и построить плавно. Единственная проблема остается с одним заголовком: video/background_segm.hpp, который все еще дает:
#include <list>       !'list' file not found
Если я прокомментирую эту строку, я получаю сообщение об ошибке на следующей строке:
namespace cv          !unknown type name 'namespace'
Кажется очевидным, что компилятор не распознает это как заголовок С++, хотя он суффикс .hpp.
В opencv2/video/video.hpp, если я удалю
#include "opencv2/video/background_segm.hpp"
Я также могу построить с помощью video.hpp (хотя, на мой взгляд, это было бы непригодно на практике).
К сожалению, я все еще не могу заставить SURF работать. Когда я запускаю проект, он вылетает с этой ошибкой:
Ошибка OpenCV: функция/функция не реализована (OpenCV был создан без поддержки SURF)
Это срабатывает в legacy/features2d.cpp:
   Ptr<Feature2D> surf = Algorithm::create<Feature2D>("Feature2D.SURF");
   if( surf.empty() )
        CV_Error(CV_StsNotImplemented, "OpenCV was built without SURF support");
Вопросы остаются...
-  Как мне убедить компилятор, что 
background_segm.hppявляется законным заголовком С++? - Как включить поддержку SURF?
 
.mm запустить файл в компиляторе С++ в iOS, чтобы он не отображал ошибку.