Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#78336 - [opencv] build with Qt 6

Attached to Project: Arch Linux
Opened by Shawn Rutledge (ecloud) - Sunday, 30 April 2023, 03:27 GMT
Last edited by Antonio Rojas (arojas) - Tuesday, 02 May 2023, 12:25 GMT
Task Type Feature Request
Category Packages: Extra
Status Closed
Assigned To Antonio Rojas (arojas)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
Needs to be built with Qt 6

Additional info:
Qt 5 is obsolete for new development. I want to use OpenCV and Qt, but don't want to be stuck with Qt 5 for the rest of the application just because of OpenCV's dependency. It's not possible to link two major versions of Qt into one application. I googled, and other people are using Qt 6 and OpenCV together on other platforms. I don't think the porting ought to be much work. Is it just a matter of changing the dependency in the Arch package then?

$ pkgconf --libs opencv4
-lopencv_gapi -lopencv_stitching -lopencv_alphamat -lopencv_aruco -lopencv_barcode -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_cvv -lopencv_dnn_objdetect -lopencv_dnn_superres -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hdf -lopencv_hfs -lopencv_img_hash -lopencv_intensity_transform -lopencv_line_descriptor -lopencv_mcc -lopencv_quality -lopencv_rapid -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_highgui -lopencv_datasets -lopencv_text -lopencv_plot -lopencv_videostab -lopencv_videoio -lopencv_viz -lopencv_wechat_qrcode -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_video -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_imgcodecs -lopencv_features2d -lopencv_dnn -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core

Only some of those link to Qt. If I choose only the libraries that my application actually needs, I can avoid linking to those that link to Qt; but then I can't use pkgconf, I guess?

Steps to reproduce:
$ ldd /usr/lib/libopencv_cvv.so.407
linux-vdso.so.1 (0x00007ffc975ea000)
libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0x00007f4002579000)
...
This task depends upon

Closed by  Antonio Rojas (arojas)
Tuesday, 02 May 2023, 12:25 GMT
Reason for closing:  Implemented
Additional comments about closing:  opencv 4.7.0-10
Comment by Toolybird (Toolybird) - Sunday, 30 April 2023, 21:14 GMT
There's still quite a few pkgs depending on opencv that also depend on qt5 so this might not be possible currently..
Comment by Antonio Rojas (arojas) - Tuesday, 02 May 2023, 12:25 GMT
None of the packages that depend on opencv and qt5 use the opencv_highgui module, so it should be safe.

Loading...