Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Oct 2013 14:40:22 +0300
From:      Andriy Gapon <avg@FreeBSD.org>
To:        "Jason E. Hale" <jhale@FreeBSD.org>
Cc:        multimedia@FreeBSD.org
Subject:   Re: graphics/opencv dependency on ffmpeg is broken by multimedia/ffmpeg upgrade
Message-ID:  <52666426.5020607@FreeBSD.org>
In-Reply-To: <5645227.Ty1j0Gy4S8@mocha.verizon.net>
References:  <5263F447.40705@FreeBSD.org> <CAHtVNLNghzneDmmu0PCsnzmx3hRq1DPZAkbdRwouaedr%2Bi9DzA@mail.gmail.com> <5645227.Ty1j0Gy4S8@mocha.verizon.net>

next in thread | previous in thread | raw e-mail | index | archive | help
on 22/10/2013 02:19 Jason E. Hale said the following:
> On Sunday, October 20, 2013 20:49:37 William Grzybowski wrote:
>> jhale, please approve this patch.
>>
>> On Sun, Oct 20, 2013 at 1:18 PM, Andriy Gapon <avg@freebsd.org> wrote:
>>> LIB_DEPENDS+=   avcodec.1:${PORTSDIR}/multimedia/ffmpeg
>>>
>>> multimedia/ffmpeg no longer provides libavcodec.so.1.
>>> It's libavcodec.so.55 now.
>>>
> 
> I committed the patch along with a few other changes in r331209.  Thanks!
> 

Thank you!

Still the build failed in my environment:
/usr/obj/ports/usr/ports/graphics/opencv/work/OpenCV-2.3.1/modules/contrib/src/spinimages.cpp:
In member function 'void cv::SpinImageModel::selectRandomSubset(float)':
/usr/obj/ports/usr/ports/graphics/opencv/work/OpenCV-2.3.1/modules/contrib/src/spinimages.cpp:793:45:
error: call of overloaded 'iota(std::vector<int>::iterator,
std::vector<int>::iterator, int)' is ambiguous
         iota(subset.begin(), subset.end(), 0);

/usr/obj/ports/usr/ports/graphics/opencv/work/OpenCV-2.3.1/modules/contrib/src/spinimages.cpp:793:45:
note: candidates are:
/usr/obj/ports/usr/ports/graphics/opencv/work/OpenCV-2.3.1/modules/contrib/src/spinimages.cpp:88:36:
note: void {anonymous}::iota(FwIt, FwIt, T) [with FwIt =
__gnu_cxx::__normal_iterator<int*, std::vector<int> >; T = int]
 template<class FwIt, class T> void iota(FwIt first, FwIt last, T value) {
while(first != last) *first++ = value++; }

/usr/local/lib/gcc48/include/c++/bits/stl_numeric.h:82:5: note: void
std::iota(_ForwardIterator, _ForwardIterator, _Tp) [with _ForwardIterator =
__gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Tp = int]
     iota(_ForwardIterator __first, _ForwardIterator __last, _Tp __value)

The problem seems to be that Makefile has USE_CXXSTD=gnu++11 and C++11 already
includes std::iota: http://en.cppreference.com/w/cpp/algorithm/iota
But spinimages.cpp defines another iota with exactly the same signature.

-- 
Andriy Gapon



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