Bug 1944536 - opencv: FTBFS in Fedora rawhide
Summary: opencv: FTBFS in Fedora rawhide
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: opencv
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Nicolas Chauvet (kwizart)
QA Contact: Fedora Extras Quality Assurance
URL: https://koschei.fedoraproject.org/pac...
Whiteboard:
Depends On:
Blocks: PYTHON3.10 F35FTBFS
TreeView+ depends on / blocked
 
Reported: 2021-03-30 06:46 UTC by Tomáš Hrnčiar
Modified: 2021-04-12 18:08 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-04-12 18:08:36 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Tomáš Hrnčiar 2021-03-30 06:46:53 UTC
Description of problem:
Package opencv fails to build from source in Fedora rawhide.

Version-Release number of selected component (if applicable):
4.5.1-6.fc35

Steps to Reproduce:
koji build --scratch f35 opencv-4.5.1-6.fc35.src.rpm

Additional info:
This package is tracked by Koschei. See:
https://koschei.fedoraproject.org/package/opencv

Comment 1 Nicolas Chauvet (kwizart) 2021-03-31 13:14:19 UTC
I've fixed by adding the vtk-java missing BR with vtk 9

Now I have the following error: (disabling tests to see if it helps).


[ 82%] Building CXX object modules/gapi/CMakeFiles/opencv_test_gapi.dir/test/gapi_basic_hetero_tests.cpp.o
cd /builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/modules/gapi && /usr/bin/g++ -DVK_NO_PROTOTYPES -D_USE_MATH_DEFINES -D__OPENCV_BUILD=1 -D__OPENCV_TESTS=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu -I/usr/include/vulkan -I/builddir/build/BUILD/opencv-4.5.1/modules/ts/include -I/builddir/build/BUILD/opencv-4.5.1/modules/gapi/include -I/builddir/build/BUILD/opencv-4.5.1/modules/imgcodecs/include -I/builddir/build/BUILD/opencv-4.5.1/modules/videoio/include -I/builddir/build/BUILD/opencv-4.5.1/modules/core/include -I/builddir/build/BUILD/opencv-4.5.1/modules/flann/include -I/builddir/build/BUILD/opencv-4.5.1/modules/imgproc/include -I/builddir/build/BUILD/opencv-4.5.1/modules/dnn/include -I/builddir/build/BUILD/opencv-4.5.1/modules/features2d/include -I/builddir/build/BUILD/opencv-4.5.1/modules/calib3d/include -I/builddir/build/BUILD/opencv-4.5.1/modules/video/include -I/builddir/build/BUILD/opencv-4.5.1/modules/highgui/include -I/builddir/build/BUILD/opencv-4.5.1/modules/gapi/src -I/builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/3rdparty/ade/ade-0.1.1f/sources/ade/include -isystem /usr/include/gdal -isystem /usr/include/coin -isystem /usr/include/openblas -isystem /usr/include/eigen3 -O2  -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -m64  -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection   -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Wsuggest-override -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -fvisibility=hidden -fvisibility-inlines-hidden -fopenmp -fPIE -std=c++11 -o CMakeFiles/opencv_test_gapi.dir/test/gapi_basic_hetero_tests.cpp.o -c /builddir/build/BUILD/opencv-4.5.1/modules/gapi/test/gapi_basic_hetero_tests.cpp
In file included from /usr/include/c++/11/vector:66,
                 from /builddir/build/BUILD/opencv-4.5.1/modules/gapi/test/test_precomp.hpp:14,
                 from /builddir/build/BUILD/opencv-4.5.1/modules/gapi/test/gapi_async_test.cpp:8:
/usr/include/c++/11/bits/stl_uninitialized.h: In instantiation of '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>*>; _ForwardIterator = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>*]':
/usr/include/c++/11/bits/stl_uninitialized.h:333:37:   required from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>*>; _ForwardIterator = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>*; _Tp = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>]'
/usr/include/c++/11/bits/stl_vector.h:1514:35:   required from 'std::vector<_Tp, _Alloc>::pointer std::vector<_Tp, _Alloc>::_M_allocate_and_copy(std::vector<_Tp, _Alloc>::size_type, _ForwardIterator, _ForwardIterator) [with _ForwardIterator = std::move_iterator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>*>; _Tp = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>; _Alloc = std::allocator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply> >; std::vector<_Tp, _Alloc>::pointer = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>*; std::vector<_Tp, _Alloc>::size_type = long unsigned int]'
/usr/include/c++/11/bits/vector.tcc:85:36:   required from 'void std::vector<_Tp, _Alloc>::reserve(std::vector<_Tp, _Alloc>::size_type) [with _Tp = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>; _Alloc = std::allocator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int]'
/builddir/build/BUILD/opencv-4.5.1/modules/gapi/test/gapi_async_test.cpp:363:54:   required from 'void opencv_test::gtest_case_cancel_::basic<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncApply>]'
/builddir/build/BUILD/opencv-4.5.1/modules/gapi/test/gapi_async_test.cpp:360:1:   required from here
/usr/include/c++/11/bits/stl_uninitialized.h:138:72: error: static assertion failed: result type must be constructible from value type of input range
  138 |       static_assert(is_constructible<_ValueType2, decltype(*__first)>::value,
      |                                                                        ^~~~~
/usr/include/c++/11/bits/stl_uninitialized.h:138:72: note: 'std::integral_constant<bool, false>::value' evaluates to false
/usr/include/c++/11/bits/stl_uninitialized.h: In instantiation of '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>*>; _ForwardIterator = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>*]':
/usr/include/c++/11/bits/stl_uninitialized.h:333:37:   required from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>*>; _ForwardIterator = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>*; _Tp = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>]'
/usr/include/c++/11/bits/stl_vector.h:1514:35:   required from 'std::vector<_Tp, _Alloc>::pointer std::vector<_Tp, _Alloc>::_M_allocate_and_copy(std::vector<_Tp, _Alloc>::size_type, _ForwardIterator, _ForwardIterator) [with _ForwardIterator = std::move_iterator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>*>; _Tp = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>; _Alloc = std::allocator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled> >; std::vector<_Tp, _Alloc>::pointer = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>*; std::vector<_Tp, _Alloc>::size_type = long unsigned int]'
/usr/include/c++/11/bits/vector.tcc:85:36:   required from 'void std::vector<_Tp, _Alloc>::reserve(std::vector<_Tp, _Alloc>::size_type) [with _Tp = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>; _Alloc = std::allocator<opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled> >; std::vector<_Tp, _Alloc>::size_type = long unsigned int]'
/builddir/build/BUILD/opencv-4.5.1/modules/gapi/test/gapi_async_test.cpp:363:54:   required from 'void opencv_test::gtest_case_cancel_::basic<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = opencv_test::Case<opencv_test::SelfCanceling, opencv_test::CallBack, opencv_test::AsyncCompiled>]'
/builddir/build/BUILD/opencv-4.5.1/modules/gapi/test/gapi_async_test.cpp:360:1:   required from here
/usr/include/c++/11/bits/stl_uninitialized.h:138:72: error: static assertion failed: result type must be constructible from value type of input range
/usr/include/c++/11/bits/stl_uninitialized.h:138:72: note: 'std::integral_constant<bool, false>::value' evaluates to false
gmake[2]: *** [modules/gapi/CMakeFiles/opencv_test_gapi.dir/build.make:293: modules/gapi/CMakeFiles/opencv_test_gapi.dir/test/gapi_async_test.cpp.o] Error 1
gmake[2]: *** Waiting for unfinished jobs....
/usr/bin/gmake  -f modules/java/jni/CMakeFiles/opencv_java.dir/build.make modules/java/jni/CMakeFiles/opencv_java.dir/depend
gmake[2]: Entering directory '/builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu'
cd /builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /builddir/build/BUILD/opencv-4.5.1 /builddir/build/BUILD/opencv-4.5.1/modules/java/jni /builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu /builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/modules/java/jni /builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/modules/java/jni/CMakeFiles/opencv_java.dir/DependInfo.cmake --color=
Dependee "/builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/modules/java/jni/CMakeFiles/opencv_java.dir/DependInfo.cmake" is newer than depender "/builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/modules/java/jni/CMakeFiles/opencv_java.dir/depend.internal".
Dependee "/builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/modules/java/jni/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/builddir/build/BUILD/opencv-4.5.1/x86_64-redhat-linux-gnu/modules/java/jni/CMakeFiles/opencv_java.dir/depend.internal".

Comment 2 Sergio Basto 2021-03-31 15:08:25 UTC
/usr/include/c++/11/bits/stl_uninitialized.h:138:72: error: static assertion failed: result type must be constructible from value type of input range
  138 |       static_assert(is_constructible<_ValueType2, decltype(*__first)>::value,
/usr/include/c++/11/bits/stl_uninitialized.h:138:72: note: 'std::integral_constant<bool, false>::value' evaluates to false

Comment 3 Sergio Basto 2021-03-31 23:11:33 UTC
Fix is here: https://github.com/opencv/opencv/pull/19247 add another #include <thread>

Comment 4 Sergio Basto 2021-03-31 23:55:35 UTC
but is not all, also we https://github.com/opencv/opencv/issues/19678

Comment 5 Nicolas Chauvet (kwizart) 2021-04-01 06:47:27 UTC
Thanks for pointing to the report.

We need to issue the libstdc++ rebuild without delay for f34+, we could re-introduce building tests by then.


Note You need to log in before you can comment on or make changes to this bug.