Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 747949 - media-libs/opencv-4.4.0-r1[eigen] with dev-cpp/eigen-3.3.8: src/async.cpp Parallelizer.h:162:19: error: ‘eigen_assert_exception’ is not a member of ‘Eigen’
Summary: media-libs/opencv-4.4.0-r1[eigen] with dev-cpp/eigen-3.3.8: src/async.cpp Par...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Amy Liffey
URL:
Whiteboard:
Keywords: PullRequest
: 747961 748084 (view as bug list)
Depends on:
Blocks: 746596
  Show dependency tree
 
Reported: 2020-10-12 08:45 UTC by Anton Kochkov
Modified: 2020-10-18 14:49 UTC (History)
10 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
full build log (opencv-build.log,54.64 KB, text/x-log)
2020-10-12 08:45 UTC, Anton Kochkov
Details
opencv build failed (opencvbuild.log,82.88 KB, text/x-log)
2020-10-12 10:33 UTC, HougeLangley
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Kochkov 2020-10-12 08:45:14 UTC
Created attachment 664840 [details]
full build log

_MACROS -D__STDC_LIMIT_MACROS -I/var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0/modules/core/include -Imodules/core -isystem . -isystem /usr/include/eigen3  -march=core2 -mtune=generic -O2 -pipe   -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 -Winit-self -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 -fPIC -std=c++11 -MD -MT modules/core/CMakeFiles/opencv_core.dir/src/async.cpp.o -MF modules/core/CMakeFiles/opencv_core.dir/src/async.cpp.o.d -o modules/core/CMakeFiles/opencv_core.dir/src/async.cpp.o -c /var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0/modules/core/src/async.cpp
FAILED: modules/core/CMakeFiles/opencv_core.dir/src/async.cpp.o 
/usr/bin/x86_64-pc-linux-gnu-g++ -DCVAPI_EXPORTS -DOPENCV_ALLOCATOR_STATS_COUNTER_TYPE="long long" -D_USE_MATH_DEFINES -D__OPENCV_BUILD=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0/modules/core/include -Imodules/core -isystem . -isystem /usr/include/eigen3  -march=core2 -mtune=generic -O2 -pipe   -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 -Winit-self -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 -fPIC -std=c++11 -MD -MT modules/core/CMakeFiles/opencv_core.dir/src/async.cpp.o -MF modules/core/CMakeFiles/opencv_core.dir/src/async.cpp.o.d -o modules/core/CMakeFiles/opencv_core.dir/src/async.cpp.o -c /var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0/modules/core/src/async.cpp
In file included from /usr/include/eigen3/Eigen/Core:88,
                 from /var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0/modules/core/include/opencv2/core/private.hpp:70,
                 from /var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0/modules/core/src/precomp.hpp:55,
                 from /var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0/modules/core/src/async.cpp:5:
/usr/include/eigen3/Eigen/src/Core/products/Parallelizer.h: In function ‘void Eigen::internal::parallelize_gemm(const Functor&, Index, Index, Index, bool)’:
/usr/include/eigen3/Eigen/src/Core/products/Parallelizer.h:162:19: error: ‘eigen_assert_exception’ is not a member of ‘Eigen’
  162 |   if (errorCount) EIGEN_THROW_X(Eigen::eigen_assert_exception());
      |                   ^~~~~~~~~~~~~
ninja: build stopped: subcommand failed.
 [31;01m*[0m ERROR: media-libs/opencv-4.4.0-r1::gentoo failed (compile phase):
 [31;01m*[0m   ninja -v -j9 -l0 failed
 [31;01m*[0m 
 [31;01m*[0m Call stack:
 [31;01m*[0m     ebuild.sh, line  125:  Called src_compile
 [31;01m*[0m   environment, line 5593:  Called cmake-multilib_src_compile
 [31;01m*[0m   environment, line 1265:  Called multilib-minimal_src_compile
 [31;01m*[0m   environment, line 4252:  Called multilib_foreach_abi 'multilib-minimal_abi_src_compile'
 [31;01m*[0m   environment, line 4522:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 [31;01m*[0m   environment, line 4187:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 [31;01m*[0m   environment, line 4185:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_compile'
 [31;01m*[0m   environment, line  683:  Called multilib-minimal_abi_src_compile
 [31;01m*[0m   environment, line 4246:  Called multilib_src_compile
 [31;01m*[0m   environment, line 4734:  Called cmake_src_compile
 [31;01m*[0m   environment, line 1376:  Called cmake_build
 [31;01m*[0m   environment, line 1345:  Called eninja
 [31;01m*[0m   environment, line 1958:  Called die
 [31;01m*[0m The specific snippet of code:
 [31;01m*[0m       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 [31;01m*[0m 
 [31;01m*[0m If you need support, post the output of `emerge --info '=media-libs/opencv-4.4.0-r1::gentoo'`,
 [31;01m*[0m the complete build log and the output of `emerge -pqv '=media-libs/opencv-4.4.0-r1::gentoo'`.
!!! When you file a bug report, please include the following information:
GENTOO_VM=  CLASSPATH="/usr/share/jdbc-postgresql/lib/jdbc-postgresql.jar" JAVA_HOME="/etc/java-config-2/current-system-vm"
JAVACFLAGS="" COMPILER=""
and of course, the output of emerge --info =opencv-4.4.0
 [31;01m*[0m The complete build log is located at '/var/tmp/portage/media-libs/opencv-4.4.0-r1/temp/build.log'.
 [31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/media-libs/opencv-4.4.0-r1/temp/environment'.
 [31;01m*[0m Working directory: '/var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0_build-abi_x86_64.amd64'
 [31;01m*[0m S: '/var/tmp/portage/media-libs/opencv-4.4.0-r1/work/opencv-4.4.0'

emerge --info output:

ortage 3.0.8 (python 3.7.9-final-0, default/linux/amd64/17.0/no-multilib/hardened, gcc-9.3.0, glibc-2.32-r2, 4.9.24-hardened x86_64)
=================================================================
System uname: Linux-4.9.24-hardened-x86_64-Intel-R-_Core-TM-_i7_CPU_930_@_2.80GHz-with-gentoo-2.7
KiB Mem:     8163492 total,   5427628 free
KiB Swap:   16016792 total,  15674236 free
Timestamp of repository gentoo: Mon, 12 Oct 2020 03:45:01 +0000
Head commit of repository gentoo: 41357f256e1dacb4528a2d1f4a51e70ded235c28
sh bash 5.0_p18
ld GNU ld (Gentoo 2.34 p6) 2.34.0
app-shells/bash:          5.0_p18::gentoo
dev-java/java-config:     2.3.1::gentoo
dev-lang/perl:            5.30.3-r1::gentoo
dev-lang/python:          2.7.18-r4::gentoo, 3.6.12::gentoo, 3.7.9::gentoo, 3.8.6::gentoo, 3.9.0::gentoo
dev-util/cmake:           3.18.4::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.7::gentoo
sys-apps/openrc:          0.42.1::gentoo
sys-apps/sandbox:         2.20::gentoo
sys-devel/autoconf:       2.69-r5::gentoo
sys-devel/automake:       1.14.1-r2::gentoo, 1.15.1-r2::gentoo, 1.16.2::gentoo
sys-devel/binutils:       2.34-r2::gentoo, 2.35.1::gentoo
sys-devel/gcc:            6.4.0-r2::gentoo, 7.3.0-r3::gentoo, 8.1.0-r3::gentoo, 8.2.0-r6::gentoo, 9.3.0-r1::gentoo, 10.2.0-r2::gentoo
sys-devel/gcc-config:     2.3.2::gentoo
sys-devel/libtool:        2.4.6-r6::gentoo
sys-devel/make:           4.3::gentoo
sys-kernel/linux-headers: 5.8::gentoo (virtual/os-headers)
sys-libs/glibc:           2.32-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.us.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-verify-metamanifest: yes
    sync-rsync-extra-opts: 
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-max-age: 24

x-portage
    location: /usr/local/portage
    masters: gentoo
    priority: 0

gentoo-xvilka
    location: /var/lib/layman/gentoo-xvilka
    masters: gentoo
    priority: 1

godin
    location: /var/lib/layman/godin
    masters: gentoo
    priority: 50

xvilka-overlay
    location: /var/lib/layman/xvilka-overlay
    masters: gentoo
    priority: 50

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE dlj-1.1"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -mtune=generic -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/bind /var/qmail/alias /var/qmail/control /var/vpopmail/etc"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.6/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=core2 -mtune=generic -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j9"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="acl amd64 bzip2 crypt cvs git gnutls hardened iconv ipv6 libglvnd libtirpc lighttpd mercurial mmx ncurses nls nptl openmp pam pcre perl php pie postgresql python readline sbcl seccomp split-usr sse sse2 sse4 ssl ssp ssse3 subversion unicode xattr xml xmlrpc xsl xtpax zlib" ABI_X86="64" ADA_TARGET="gnat_2018" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" ELIBC="glibc" INPUT_DEVICES="libinput" KERNEL="linux" LCD_DEVICES="ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2 php7-3 php7-4" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_7" PYTHON_TARGETS="python2_7 python3_7" RUBY_TARGETS="ruby27" USERLAND="GNU" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-10-12 10:24:36 UTC
Looks like an upstream issue in the new dev-ccpp/eigen-3.3.8. I'll try to reproduce shortly.

CCing eigen maintainers, there's a patch here: https://gitlab.com/libeigen/eigen/-/merge_requests/232. https://bugs.archlinux.org/task/68118?project=0&order=id&sort=desc&string=parallel mentions two problems, apparently both have been fixed upstream now post-release.
Comment 2 HougeLangley 2020-10-12 10:33:39 UTC
Created attachment 664843 [details]
opencv build failed
Comment 3 HougeLangley 2020-10-12 10:34:44 UTC
opencv 4.4.0-r1 build failed, full log could see in attachment
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-10-12 10:39:27 UTC
(In reply to HougeLangley from comment #3)
> opencv 4.4.0-r1 build failed, full log could see in attachment

I think the issue is in Eigen. You can try downgrading it to 3.3.7-r1 or 3.3.7 for now until I get a chance to add a < dep, and then pending Eigen maintainers pushing the patches possibly.
Comment 5 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-10-12 10:52:18 UTC
*** Bug 747961 has been marked as a duplicate of this bug. ***
Comment 6 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-10-12 16:03:54 UTC
*** Bug 748084 has been marked as a duplicate of this bug. ***
Comment 7 Larry the Git Cow gentoo-dev 2020-10-12 16:11:49 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ec0fa8e9928460b1cc10dec718ba5ad1db5b9b9e

commit ec0fa8e9928460b1cc10dec718ba5ad1db5b9b9e
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2020-10-12 16:11:25 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2020-10-12 16:11:45 +0000

    media-libs/opencv: require <dev-cpp/eigen-3.3.8 for now
    
    Eigen 3.3.8 introduced a bug (bugs?) it seems, so we'll
    workaround that for now with a < restriction.
    
    Bug: https://bugs.gentoo.org/747949
    Package-Manager: Portage-3.0.8, Repoman-3.0.1
    Signed-off-by: Sam James <sam@gentoo.org>

 media-libs/opencv/{opencv-4.4.0-r1.ebuild => opencv-4.4.0-r2.ebuild} | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Comment 8 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2020-10-12 16:13:33 UTC
I've applied the workaround for now (depend on an older Eigen) just so people can be building opencv for now, especially given USE=eigen has been broken for a little while and we only fixed that last night (bug 733796).
Comment 9 Larry the Git Cow gentoo-dev 2020-10-12 16:15:30 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2a69391373153bcb32284be0a12d38493b24bddd

commit 2a69391373153bcb32284be0a12d38493b24bddd
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2020-10-12 15:53:09 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2020-10-12 16:15:20 +0000

    dev-cpp/eigen: Backport fix for revdeps build failures
    
    Reported-by: Anton Kochkov <anton.kochkov@gmail.com>
    Thanks-to: Sam James <sam@gentoo.org>
    Closes: https://bugs.gentoo.org/747949
    Package-Manager: Portage-3.0.8, Repoman-3.0.1
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 .../{eigen-3.3.8.ebuild => eigen-3.3.8-r1.ebuild}  |  5 +-
 ...error-counting-in-openmp-parallelize_gemm.patch | 64 ++++++++++++++++++++++
 2 files changed, 68 insertions(+), 1 deletion(-)
Comment 10 Larry the Git Cow gentoo-dev 2020-10-18 14:49:35 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3b0b4c6efa56748cae3f7de69798c4c9adb628ec

commit 3b0b4c6efa56748cae3f7de69798c4c9adb628ec
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2020-10-18 14:23:35 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2020-10-18 14:49:28 +0000

    media-libs/opencv: don't allow =dev-cpp/eigen-3.3.8
    
    dev-cpp/eigen-3.3.8 was broken upstream and -r1
    introduces a backported fix.
    
    While 3.3.8 was removed from tree, it is possible
    that 3.3.8 is still installed and satisfies the
    dependency on a user's machine, in the case
    of the latter bug referenced here.
    
    Bug: https://bugs.gentoo.org/747949
    Closes: https://bugs.gentoo.org/749804
    Package-Manager: Portage-3.0.8, Repoman-3.0.1
    Signed-off-by: Sam James <sam@gentoo.org>

 media-libs/opencv/opencv-4.4.0-r1.ebuild | 8 +++++++-
 media-libs/opencv/opencv-4.5.0.ebuild    | 8 +++++++-
 2 files changed, 14 insertions(+), 2 deletions(-)