Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Dec 2012 03:59:01 -0500
From:      "Thomas Mueller" <mueller23@insightbb.com>
To:        freebsd-ports@freebsd.org
Cc:        jhale@freebsd.org, mva@freebsd.org
Subject:   graphics/opencv apparently broken, also out of date: update
Message-ID:  <BC.FD.25232.5D7C6D05@smtp01.insight.synacor.com>

next in thread | raw e-mail | index | archive | help
I originally sent this early last November, but nothing happened, and now the ports freeze is over.

I had great difficulty using send-pr when submitting the problem with graphics/gnash, couldn't set MAIL_AGENT to what I use (msmtp) with sendmail not set up: just got error messages.  Try again?

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.  But I was able to pigeonhole graphics/opencv
and four other ports that depend on opencv and complete the rest of the massive
upgrade of ports.

I am on FreeBSD 9.0_STABLE, stuck to the default options except for enabling 
xine support, which was off by default.  In a more recent attempt, I stuck to 
the default options, with xine support off: this made no difference, I got the
same or similar errors, and building graphics/opencv failed.

I now have a file /BETA1/usr/ports/pigeonhole12.cmd

portmaster multimedia/phonon-gstreamer multimedia/gstreamer-plugins-all graphics/gstreamer-plugins-opencv graphics/opencv 

so I can later run
`cat pigeonhole12.cmd` &| tee opencv.log

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).

This was on FreeBSD ports version 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)

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 .

Maybe I need to check the Porters' Handbook and try to port it myself?

Tom



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BC.FD.25232.5D7C6D05>