../../doltlibtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -std=gnu99 -O2 -march=corei7-avx -pipe -Wall -Wextra -Wsign-compare -Wundef -Wpointer-arith -Wbad-function-cast -Wwrite-strings -Wmissing-prototypes -Wvolatile-register-var -Werror-implicit-function-declaration -pipe -fvisibility=hidden -avoid-version -module -export-symbols-regex ^vlc_entry -shrext .so -no-undefined ../../compat/libcompat.la ../../src/libvlccore.la -rpath '/usr/lib64/vlc/plugins/video_filter' -Wl,-O1 -Wl,--as-needed -L/usr/lib64/sidplay/builders/ -o librotate_plugin.la -rpath /usr/lib64/vlc/plugins/video_filter rotate.lo ../control/libvlc_motion.la -lm opencv_example.cpp: In function ‘picture_t* Filter(filter_t*, picture_t*)’: opencv_example.cpp:197:58: error: ‘CV_RGB’ was not declared in this scope cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 ); ^ opencv_example.cpp:197:69: error: ‘cvRectangle’ was not declared in this scope cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 ); ^ opencv_example.cpp:201:57: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings] p_sys->event_info.p_region[i].p_description = "Face Detected";
confirmed : libtool: link: ( cd ".libs" && rm -f "libfreeze_plugin.la" && ln -s "../libfreeze_plugin.la" "libfreeze_plugin.la" ) ../../doltlibtool --tag=CXX --mode=compile x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -DMODULE_STRING=\"$(p="libopencv_example_plugin_la-opencv_example.lo"; p="${p##*/}"; p="${p#lib}"; p="${p%_plugin*}"; p="${p%.lo}"; echo "$p")\" -D__PLUGIN__ -DMODULE_NAME_IS_opencv_example -I../../include -I../../include -march=native -O2 -pipe -Wall -Wextra -Wsign-compare -Wundef -Wpointer-arith -Wvolatile-register-var -fvisibility=hidden -c -o libopencv_example_plugin_la-opencv_example.lo `test -f 'opencv_example.cpp' || echo './'`opencv_example.cpp opencv_example.cpp: In function ‘picture_t* Filter(filter_t*, picture_t*)’: opencv_example.cpp:197:58: error: ‘CV_RGB’ was not declared in this scope cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 ); ^ opencv_example.cpp:197:69: error: ‘cvRectangle’ was not declared in this scope cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 ); ^ opencv_example.cpp:201:57: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings] p_sys->event_info.p_region[i].p_description = "Face Detected"; ^ Makefile:3058: recipe for target 'libopencv_example_plugin_la-opencv_example.lo' failed make[5]: *** [libopencv_example_plugin_la-opencv_example.lo] Error 1 make[5]: Leaving directory '/var/tmp/portage/media-video/vlc-2.2.1/work/vlc-2.2.1/modules/video_filter' Makefile:2043: recipe for target 'all' failed make[4]: *** [all] Error 2 make[4]: Leaving directory '/var/tmp/portage/media-video/vlc-2.2.1/work/vlc-2.2.1/modules/video_filter' Makefile:9653: recipe for target 'all-recursive' failed make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory '/var/tmp/portage/media-video/vlc-2.2.1/work/vlc-2.2.1/modules' Makefile:4527: recipe for target 'all' failed make[2]: *** [all] Error 2 make[2]: Leaving directory '/var/tmp/portage/media-video/vlc-2.2.1/work/vlc-2.2.1/modules' Makefile:2262: recipe for target 'all-recursive' failed make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory '/var/tmp/portage/media-video/vlc-2.2.1/work/vlc-2.2.1' Makefile:2147: recipe for target 'all' failed make: *** [all] Error 2 * ERROR: media-video/vlc-2.2.1::gentoo failed (compile phase): * emake failed * * If you need support, post the output of `emerge --info '=media-video/vlc-2.2.1::gentoo'`, * the complete build log and the output of `emerge -pqv '=media-video/vlc-2.2.1::gentoo'`. * The complete build log is located at '/var/log/portage/media-video:vlc-2.2.1:20150721-143945.log'. * For convenience, a symlink to the build log is located at '/var/tmp/portage/media-video/vlc-2.2.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/media-video/vlc-2.2.1/temp/environment'. * Working directory: '/var/tmp/portage/media-video/vlc-2.2.1/work/vlc-2.2.1' * S: '/var/tmp/portage/media-video/vlc-2.2.1/work/vlc-2.2.1' ----------------------------------------------------------------- This is an unstable amd64 chroot image (named amd64-kde-unstable_20150716-153903) at a hardened host acting as a tinderbox. Portage 2.2.20 (python 2.7.10-final-0, default/linux/amd64/13.0/desktop/kde, gcc-4.9.3, glibc-2.21-r1, 4.0.8-hardened x86_64) ================================================================= System uname: Linux-4.0.8-hardened-x86_64-Intel-R-_Core-TM-_i7-3770_CPU_@_3.40GHz-with-gentoo-2.2 KiB Mem: 16164692 total, 1208248 free KiB Swap: 0 total, 0 free Timestamp of repository gentoo: Tue, 21 Jul 2015 13:45:01 +0000 sh bash 4.3_p39 ld GNU ld (Gentoo 2.25 p1.2) 2.25 app-shells/bash: 4.3_p39::gentoo dev-java/java-config: 2.2.0::gentoo dev-lang/perl: 5.22.0::gentoo dev-lang/python: 2.7.10::gentoo, 3.3.5-r1::gentoo dev-util/cmake: 3.2.3::gentoo dev-util/pkgconfig: 0.28-r3::gentoo sys-apps/baselayout: 2.2::gentoo sys-apps/openrc: 0.17::gentoo sys-apps/sandbox: 2.6-r1::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69-r1::gentoo sys-devel/automake: 1.9.6-r4::gentoo, 1.10.3-r1::gentoo, 1.11.6-r1::gentoo, 1.12.6::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo sys-devel/binutils: 2.25-r1::gentoo sys-devel/gcc: 4.8.4::gentoo, 4.9.3::gentoo sys-devel/gcc-config: 1.8::gentoo sys-devel/libtool: 2.4.6-r1::gentoo sys-devel/make: 4.1-r1::gentoo sys-kernel/linux-headers: 4.1::gentoo (virtual/os-headers) sys-libs/glibc: 2.21-r1::gentoo Repositories: local location: /usr/local/portage masters: gentoo gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: 9999 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/lib64/tomoyo/conf /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.2/conf /var/lib/hsqldb /var/spool/torque" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/games/angband/edit/ /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.5/ext-active/ /etc/php/apache2-php5.6/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cgi-php5.6/ext-active/ /etc/php/cli-php5.5/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=native -O2 -pipe" DISTDIR="/var/tmp/distfiles" EMERGE_DEFAULT_OPTS=" --accept-properties=-interactive --accept-restrict=-fetch --nospinner --tree --quiet-build" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://ftp.uni-erlangen.de/pub/mirrors/gentoo rsync://mirror.netcologne.de/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gor.bytemark.co.uk/gentoo/ rsync://ftp.snt.utwente.nl/gentoo" LANG="en_US.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j1" PKGDIR="/usr/portage/packages" 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" PORTAGE_TMPDIR="/var/tmp" USE="X a52 aac acl acpi aes-ni alsa amd64 apache2 avx avx2 berkdb bluetooth branding btrfs bzip2 cairo cdda cdr cgi cli consolekit corefonts cracklib crypt cups curl cxx dbus declarative designer dnssec dot dri drmkms dts dvd dvdr ecc emboss encode exif extraengine fam ffmpeg firefox flac fortran fpm gd gdbm gif glamor gpm gtk gudev gui iconv icu imap inifile introspection jadetex kde kipi kvm lapack lcms libkms libnotify libvirtd logrotate mad mbox minizip mmx mmxext mng modules mp3 mp4 mpeg multilib mysql ncurses nls nptl ogg opencv opengl openmp openssl pam pango pax_kernel pcre pcre16 pdf pdo phonon pkcs11 plasma png policykit ppds pulseaudio python qml qt3support qt4 qt5 readline scrpyt session smartcard sockets spell spice sse sse2 sse4 sse4_1 sse4_2 ssl ssse3 startup-notification svg tcl tcpd theora threads tiff tk tls truetype udev udisks uml unicode upower usb usbredir uxa vorbis widgets wxwidgets x264 xcb xcomposite xinerama xkb xml xmp xslt xv xvfb xvid xvmc zenmap zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea nt rip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_GB" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" 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: CPPFLAGS, CTARGET, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
and it seems that even this helps : tinderbox@tor-relay ~ $ cat amd64-kde-unstable_20150716-153903/etc/portage/package.use/vlc media-video/vlc -qt5 qt4 -opencvy media-libs/phonon-vlc qt5 qt4 -opencv tinderbox@tor-relay ~ $ :-(
(In reply to Toralf Förster from comment #2) > and it seems that even this helps : *not* helps
Thanks for reporting this bug; I'll take a look on it tonight after work. I've been having trouble getting opencv-3.0 to build, but I should be able to work through that. Toralf, I think you have a typo (extra y) in your package.use that's preventing opencv USE flag from being disabled.
I haven't written the proper patch yet, but I have tested the fix and it works. Basically with opencv 3.0 the CV_RGB function has been replaced with cvScalar. Additionally the cvRectangle is now declared in opencv2/imgproc/imgproc_c.h. So the fix is simply to update opencv_example.cpp with that header file and replace CV_RGB with cvScalar. On a side note, the order of parameters for cvScalar is the reverse of CV_RGB however since we're just passing 0 to all three parameters in both cases, it doesn't matter for VLC. I don't see this bug upstream yet, so I'll submit it there as well once I write a patch that detects opencv version and does the right thing. On a side note, I could only get opencv-3.0 to build with USE="-python" and eselect python set to python 2.7. Python 3.3 & 3.4 were throwing TypeError: unorderable types on the gen_java.py. I'll try to fix that later although I'm not much of a python person (it's too strict for my taste).
Actually, upon closer inspection, it looks like CV_RGB isn't deprecated, rather it's just moved to opencv2/imgproc/imgproc_c.h so just adding that header is all that is necessary. Anyways, will work on a proper patch later and also backtest 2.1.5.
Upstream bug: https://trac.videolan.org/vlc/ticket/15094
Created attachment 407364 [details, diff] opencv-3.0.0.patch Patch to add headers for the location of CV_RGB & cvRectangle based on upstream commit (http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b82416d7000a993b33e903095a590fe32212a85e). Works on both 2.1.5-r1 & 2.2.1 with both OpenCV-2.4.10 & 3.0.0.
29 Jul 2015; Ian Delaney <idella4@gentoo.org> +files/opencv-3.0.0.patch, vlc-2.1.5-r1.ebuild, vlc-2.2.1.ebuild: patch to address missed header file in opencv, patch from upstream instigated by maintainer submitted via bug #554562