2013-12-08 7 views
-1

Я пытаюсь установить opencv2 на моем Mac Air (с Lion) с помощью этих инструкций.Почему я не могу установить python opencv2?

http://www.guidefreitas.com/installing-opencv-2-4-2-on-mac-osx-mountain-lion-with-python-support

Я успешно сделал opencv2 с

make j8 

Однако, бег sudo make install производит нечетную ошибку, отметив, как numext не определен.

[ 63%] Building CXX object modules/contrib/CMakeFiles/opencv_contrib.dir/src/rgbdodometry.cpp.o 
In file included from /Users/davidfaux/Downloads/opencv-2.4.7/modules/contrib/src/rgbdodometry.cpp:65: 
In file included from /usr/local/include/unsupported/Eigen/MatrixFunctions:61: 
/usr/local/include/unsupported/Eigen/src/MatrixFunctions/MatrixLogarithm.h:119:41: error: 
     use of undeclared identifier 'numext' 
    result(0,1) = A(0,1) * (Scalar(2) * numext::atanh2(y,x) + ... 
             ^
In file included from /Users/davidfaux/Downloads/opencv-2.4.7/modules/contrib/src/rgbdodometry.cpp:65: 
In file included from /usr/local/include/unsupported/Eigen/MatrixFunctions:62: 
/usr/local/include/unsupported/Eigen/src/MatrixFunctions/MatrixPower.h:242:36: error: 
     use of undeclared identifier 'numext' 
    int unwindingNumber = std::ceil((numext::imag(logCurr - logPrev) - M_PI) ... 
          ^

Что означает эта ошибка? Я чувствую, что это связано с библиотекой Eigen. Я попробовал переделать библиотеку Eigen. В свою очередь это вызвало еще одну ошибку, связанную с glew, glut и OpenGL. Это похоже на спуск кроличьей дыры.

Кто-нибудь знает, откуда возникает ошибка в библиотеке Eigen?

ответ

2

Кажется, вы смешиваете две разные версии Eigen. Более того, позвольте мне еще раз вспомнить, что Eigen не нужно компилировать.

+0

Спасибо! Я думаю ты прав. Недавно я обновил Eigen и нашел две версии этого на моем пути. Я удалил оба и переустановил Eigen. Это решило проблему. – dangerChihuahua007

2

Мой фактическое решение было создать символические ссылки на eigen3, такие как:

$ ln -s /usr/local/include/eigen3/unsupported /usr/local/include/ 
+0

Ницца! Эта ошибка также может возникать при использовании vcglib (который поставляется с версией Eigen внутренне, что может отличаться от версии системы). – thiagowfx

2

Это сводит меня с ума ... но в конце концов это было просто:

brew install eigen 

И opencv построен правильно!

Смежные вопросы