Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 06 Nov 2012 01:18:05 -0500
From:      "Thomas Mueller" <mueller23@insightbb.com>
To:        freebsd-ports@freebsd.org
Cc:        mm@freebsd.org
Subject:   graphics/opencv apparently broken, also out of date
Message-ID:  <9A.0F.17144.D9BA8905@smtp01.insight.synacor.com>

next in thread | raw e-mail | index | archive | help
I am snagged in graphics/opencv in my massive upgrade of ports, and see error
messages in the log file indicating errors in the C code.  I also see there is
a newer version of openCV out.

On http://opencv.willowgarage.com/wiki/

an announcement (5/7/12, I don't know if this is May 7 or July 5) that release
2.4 is out.  There is a link to sourceforge.net with
OpenCV-2.4.3.tar.bz2 (67.2 MB).

Current FreeBSD ports version is 2.3.1_4 .

I get errors, and am reluctant to post a log > 600 lines, but an excerpt 
follows:


Scanning dependencies of target opencv_python
[ 63%] Building CXX object modules/python/CMakeFiles/opencv_python.dir/src2/cv2.o
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In function 'bool pyopencv_to(PyObject*, cv::Scalar&, const char*)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:270: error: 'PyInt_Check' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:279: error: 'PyInt_Check' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In function 'PyObject* pyopencv_from(int)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:317: error: 'PyInt_FromLong' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In function 'bool pyopencv_to(PyObject*, int&, const char*)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:324: error: 'PyInt_AsLong' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In function 'bool pyopencv_to(PyObject*, double&, const char*)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:337: error: 'PyInt_CheckExact' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:338: error: 'PyInt_AS_LONG' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In function 'bool pyopencv_to(PyObject*, float&, const char*)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:353: error: 'PyInt_CheckExact' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:354: error: 'PyInt_AS_LONG' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In function 'PyObject* pyopencv_from(const std::string&)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:367: error: 'PyString_FromString' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In function 'bool pyopencv_to(PyObject*, std::string&, const char*)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:374: error: 'PyString_AsString' was not declared in this scope
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp: In static member function 'static bool pyopencvVecConverter<_Tp>::to(PyObject*, std::vector<_Tp, std::allocator<_CharT> >&, const char*)':
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:562: error: there are no arguments to 'PyInt_Check' that depend on a template parameter, so a declaration of 'PyInt_Check' must be available
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:562: error: (if you use '-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated)
/BETA1/usr/ports/graphics/opencv/work9amd64/OpenCV-2.3.1/modules/python/src2/cv2.cpp:564: error: there are no arguments to 'PyInt_AsLong' that depend on a template parameter, so a declaration of 'PyInt_AsLong' must be available

(end of quote, I can provide more if desired, there are many similar further 
error messages)

So I could ask for this bug to be fixed, but since OpenCV 2.3.1 is so outdated,
it would seem to make more sense to go to the new version, 2.4 or 2.4.3 .

Tom



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9A.0F.17144.D9BA8905>