Trying a simple bump two of the patches do not work any more: 1. "${FILESDIR}/${P}-compilation-C-mode.patch" 2. eapply "${FILESDIR}/${PN}-3.3.0-remove-tiny-dnn-autodownload.patch" First "compilation-C-mode" looked to me as if it has been upstreamed, but I got this error without the patch: --- # emerge -1 media-libs/opencv These are the packages that would be merged, in order: Calculating dependencies . . ........ done! [ebuild r U ] media-libs/opencv-3.4.2:0/3.4.2::pmaci [3.4.1-r2:0/3.4.1::gentoo] USE="contrib* contrib_cvv* -contrib_dnn contrib_hdf* -contrib_sfm -contrib_xfeatures2d -cuda -debug -dnn_samples eigen -examples ffmpeg* gdal -gflags -glog gphoto2 gstreamer gtk -ieee1394 (-ipp) java* jpeg jpeg2k lapack -libav -opencl openexr opengl openmp pch png python qt5 -tesseract -testprograms threads tiff v4l vaapi -vtk webp -xine" ABI_X86="32* (64) (-x32)" CPU_FLAGS_X86="-avx -avx2 -fma3 -popcnt sse sse2 sse3 sse4_1 -sse4_2 ssse3" PYTHON_TARGETS="python2_7 -python3_4 -python3_5 python3_6" 0 KiB ... In file included from /usr/include/python3.6m/Python.h:53:0, from /srv/portage/media-libs/opencv-3.4.2/work/opencv-3.4.2/modules/python/src2/cv2.cpp:8: /usr/include/python3.6m/pyport.h:686:2: error: #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." #error "LONG_BIT definition appears wrong for platform (bad gcc/glibc config?)." ^~~~~ make[2]: *** [modules/python3/CMakeFiles/opencv_python3.dir/build.make:63: modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o] Error 1 make[2]: Leaving directory '/srv/portage/media-libs/opencv-3.4.2/work/opencv-3.4.2-abi_x86_32.x86' make[1]: *** [CMakeFiles/Makefile2:7428: modules/python3/CMakeFiles/opencv_python3.dir/all] Error 2 make[1]: Leaving directory '/srv/portage/media-libs/opencv-3.4.2/work/opencv-3.4.2-abi_x86_32.x86' make: *** [Makefile:163: all] Error 2 ---
*** Bug 671708 has been marked as a duplicate of this bug. ***
I'm struggling to see how the question and the title are related. The question seems to concern =media-libs/opencv-3.4.2 and not =media-libs/opencv-4.0.1. Was this accidentally renamed?
(In reply to MW from comment #2) > I'm struggling to see how the question and the title are related. The > question seems to concern =media-libs/opencv-3.4.2 and not > =media-libs/opencv-4.0.1. Was this accidentally renamed? There is no question as far as I can see and it was not renamed accidentally, we are bumping it straight to 4.0.1 soon.
Created attachment 565658 [details, diff] diff from opencv-3.4.1-r5 to opencv-4.0.1 Successfully built opencv-4.0.1 after ebuild changes in the attached patch. The following issues will need to be sorted out: 1. Go through and see which of the PATCHES are still meaningful. My lazy approach of just ignoring the patches is viable only for testing/prototyping the ebuild. 2. Go through the list of build options and make sure things are up to date.
(In reply to MW from comment #4) > Created attachment 565658 [details, diff] [details, diff] > diff from opencv-3.4.1-r5 to opencv-4.0.1 > > Successfully built opencv-4.0.1 after ebuild changes in the attached patch. > > The following issues will need to be sorted out: > > 1. Go through and see which of the PATCHES are still meaningful. My lazy > approach of just ignoring the patches is viable only for testing/prototyping > the ebuild. > > 2. Go through the list of build options and make sure things are up to date. I already have ebuild, but I can inspire possibly.. Unfortunately it sometimes brings more work ..
(In reply to Amy Liffey from comment #5) > I already have ebuild, but I can inspire possibly.. Unfortunately it > sometimes brings more work .. What's the status of your efforts? I am happy to help, if I can.
(In reply to MW from comment #6) > (In reply to Amy Liffey from comment #5) > > I already have ebuild, but I can inspire possibly.. Unfortunately it > > sometimes brings more work .. > > What's the status of your efforts? I am happy to help, if I can. Not doing lazy effort test with all the useflags and checkout all the options. Tests are running it takes time and sometimes it does false positive bugs. Which takes time to resolve as well.
Cool, then there is little point in me doing anything at the moment? - Additional fiddling here shows that cuda is no longer a requirement for building with contrib_xfeatures2d (as was the case recently, see bug 636030). - The ebuild doesn't seem to provide a way of toggling OPENCV_ENABLE_NONFREE. Shouldn't there be one?
(In reply to MW from comment #8) > Cool, then there is little point in me doing anything at the moment? > > - Additional fiddling here shows that cuda is no longer a requirement for > building with contrib_xfeatures2d (as was the case recently, see bug 636030). > - The ebuild doesn't seem to provide a way of toggling > OPENCV_ENABLE_NONFREE. Shouldn't there be one? Actually maybe you can look into my overlay and see where it is the development there and maybe help? I just committed recent last version but it is surely not complete yet. [1] [1] https://gitlab.com/Zelena/hell-overlay/commit/8a12c5d2dcaa4be7f3fe666a4d2d1a68e7e7d2d0#83f081e757c8f07605458a661a474f1a3bf6701a
(In reply to Amy Liffey from comment #9) > Actually maybe you can look into my overlay and see where it is the > development there and maybe help? I just committed recent last version but > it is surely not complete yet. [1] > > [1] > https://gitlab.com/Zelena/hell-overlay/commit/ > 8a12c5d2dcaa4be7f3fe666a4d2d1a68e7e7d2d0#83f081e757c8f07605458a661a474f1a3bf6 > 701a I have checked it out and verified that it works (x86_64-pc-linux-gnu, no-multilib), but I don't know what work remains to be done on this (except removing the cuda dependency from contrib_xfeatures_2d). The only other obvious change would be to move -DWITH_QUIRC=OFF down in the list to its corresponding place in CMakeLists.txt. I will need some directions if I am to be able to help, but I also realise it's likely to take more time giving me the instructions than just doing the work instead :)
Hi all, I can also confirm that I was able to compile openCV using the ebuild from here > https://gitlab.com/Zelena/hell-overlay/commit/ > 8a12c5d2dcaa4be7f3fe666a4d2d1a68e7e7d2d0#83f081e757c8f07605458a661a474f1a3bf6 > 701a with gcc 8.3. However, I compiled it with the cuda flag enabled, and that doesn't work without the contrib flag, so this should be added to the first line of the REQUIRED_USE section. [1] As I am using cuda 10.1, an additional patch is necessary for that [2]: https://github.com/qc2105/opencv/commit/b32ba55150c5d678836a80700a126dae8c5b67f8 Seems like the other patch mentioned here [3] is already applied to the contributed file upstream. [1] https://github.com/opencv/opencv/issues/12768 [2] https://github.com/opencv/opencv/issues/13952 [3] https://github.com/qc2105/opencv_contrib/commit/981165bcec5689c27322175d2d2ff9f6bbb80ceb
opencv 4.1.0 is already out: https://github.com/opencv/opencv/wiki/ChangeLog#version410
Created attachment 577330 [details, diff] remove installation of opencl license txt opencv 4.1.0 tries to install opencl license files from the 3rdparty folder, but the ebuild by Amy Liffey removes all files in this subfolder. So I removed the install line in the corresponding cmake file.
(In reply to Amy Liffey from comment #9) > Actually maybe you can look into my overlay and see where it is I tried this one today, along with the modification from MW (removing cuda dep for xfeatures2d). It emerges successfully with USE="contrib contrib_xfeatures2d -cuda" Unfortunately, because of https://bugs.gentoo.org/689840, xfeatures2d is not there anyway, but that's another story.
can someone created PullReq from some existing solution? It also blocks [1], since opencv 4.x removes dependency on gtkglext (since it can use GTK3) [1] https://bugs.gentoo.org/698950
can someone create PullReq from some existing solution? It also blocks [1], since opencv 4.x removes dependency on gtkglext (since it can use GTK3) [1] https://bugs.gentoo.org/698950
(In reply to David Heidelberg (okias) from comment #16) > can someone create PullReq from some existing solution? > > It also blocks [1], since opencv 4.x removes dependency on gtkglext (since > it can use GTK3) > > > [1] https://bugs.gentoo.org/698950 I will try to somehow make it work..
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2bb83a3237876597e597b7afcabd15e817ed717e commit 2bb83a3237876597e597b7afcabd15e817ed717e Author: Amy Liffey <amynka@gentoo.org> AuthorDate: 2019-11-28 16:44:07 +0000 Commit: Amy Liffey <amynka@gentoo.org> CommitDate: 2019-11-28 16:55:37 +0000 media-libs/opencv: version bump 4.1.2 Closes: https://bugs.gentoo.org/685106 Closes: https://bugs.gentoo.org/678460 Closes: https://bugs.gentoo.org/663730 Closes: https://bugs.gentoo.org/689840 Package-Manager: Portage-2.3.76, Repoman-2.3.16 Signed-off-by: Amy Liffey <amynka@gentoo.org> media-libs/opencv/Manifest | 2 + media-libs/opencv/metadata.xml | 2 + media-libs/opencv/opencv-4.1.2.ebuild | 494 ++++++++++++++++++++++++++++++++++ 3 files changed, 498 insertions(+)
(In reply to Alexander Pitzer from comment #13) > Created attachment 577330 [details, diff] [details, diff] > remove installation of opencl license txt > > opencv 4.1.0 tries to install opencl license files from the 3rdparty folder, > but the ebuild by Amy Liffey removes all files in this subfolder. So I > removed the install line in the corresponding cmake file. Same problem with media-libs/opencv-4.1.2 again. The patch still works for this version.
media-libs/opencv-4.1.2 doesn't work here.. As other reported, it fails with CMake Error at cmake_install.cmake:41 (file): file INSTALL cannot find "/tmp/portage/media-libs/opencv-4.1.2/work/opencv-4.1.2/3rdparty/include/opencl/LICENSE.txt".
Also, the ebuild has a dependancy on pkg-config: DEPEND="${RDEPEND} virtual/pkgconfig[${MULTILIB_USEDEP}] Which is probably a left over from previous ebuilds, as the ebuild actually doesn't install any pkgconfig. Which breaks lot of programs based on opencv (probably some ebuilds too, haven't checked). According to https://github.com/opencv/opencv/issues/13154#issuecomment-439335340 We now need to add OPENCV_GENERATE_PKGCONFIG=ON
Another problem is the following. Not sure if it's opencv or gentoo/ebuild. I googled for it but couldn't find anything noteworthy. When compiling projects, i have this error: make: *** [Makefile:1047: akaze.o] Error 1 make: *** Attesa per i processi non terminati.... In file included from /usr/include/opencv4/opencv2/core/cvdef.h:10, from /usr/include/opencv4/opencv2/core.hpp:52, from /usr/include/opencv4/opencv2/imgcodecs.hpp:46, from backend.cpp:14: /usr/include/x86_64-pc-linux-gnu/opencv4/opencv2/core/cvdef.h:316:10: fatal error: cv_cpu_dispatch.h: File o directory non esistente The file is there (/usr/include/opencv4/opencv2/core/cv_cpu_dispatch.h, but i dont get the trick between /usr/include/opencv4/opencv2/ and /usr/include/x86_64-pc-linux-gnu/opencv4/opencv2/ I got this problem with my own projects, and at least one ebuild now fails because of this: media-gfx/nomacs (with +opencv of course).
opencv 4.1.2-r2 installs cv2 python package in the path /usr/lib/python3.6/site-packages/ , not in the /usr/lib64/python3.6/site-packages where other python packages are located. So , if you don't have link /usr/lib -> /usr/lib64 (the case take place on fresh gentoo installations) you will need to take some actions to make cv2 visible in python (PYTHONPATH or add links).
Seems to be in tree already..