Switching from qt4 to qt5 in the new version of avidemux does not appear to have built the necessary binaries for graphical use. The only binary present is avidemux3_cli Reproducible: Always Steps to Reproduce: 1. remove qt4 as a local USE flag for avidemux 2. emerge -u 3. Actual Results: Plasma says: Sorry - Could not find the program 'avidemux3_qt5' Expected Results: The opposite of the summary.
I confirm the behavior described above. # emerge -pv avidemux avidemux-plugins These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ~] media-video/avidemux-2.6.20:2.6::gentoo USE="nls opengl qt5 sdl vaapi xv -debug -nvenc -qt4 -vdpau" LINGUAS="cs -ca -de -el -es -fr -it -ja -pt_BR -ru -sr -sr@latin -tr" VIDEO_CARDS="(-fglrx)" 0 KiB [ebuild R ~] media-libs/avidemux-plugins-2.6.20:2.6::gentoo USE="a52 aac alsa dts lame opengl pulseaudio qt5 truetype vorbis vpx x264 x265 xv xvid -aften -amr -dcaenc -debug -fdk -fontconfig -fribidi -jack -libsamplerate -nvenc -opus -oss -qt4 -twolame -vdpau" CPU_FLAGS_X86="mmx" PYTHON_TARGETS="python2_7" 0 KiB # equery f media-video/avidemux|grep bin /usr/bin /usr/bin/avidemux3_cli # emerge --info Portage 2.3.6 (python 2.7.12-final-0, default/linux/amd64/13.0/desktop/plasma/systemd, gcc-5.4.0, glibc-2.23-r4, 4.9.16-gentoo x86_64) ================================================================= System uname: Linux-4.9.16-gentoo-x86_64-Intel-R-_Core-TM-_i7-3630QM_CPU_@_2.40GHz-with-gentoo-2.3 KiB Mem: 16302852 total, 1218904 free KiB Swap: 0 total, 0 free Timestamp of repository gentoo: Sat, 01 Jul 2017 17:26:36 +0000 sh bash 4.3_p48-r1 ld GNU ld (Gentoo 2.26.1 p1.0) 2.26.1 distcc 3.2rc1 x86_64-pc-linux-gnu [disabled] app-shells/bash: 4.3_p48-r1::gentoo dev-java/java-config: 2.2.0-r3::gentoo dev-lang/perl: 5.24.1-r2::gentoo dev-lang/python: 2.7.12::gentoo, 3.4.5::gentoo dev-util/cmake: 3.7.2::gentoo dev-util/pkgconfig: 0.28-r2::gentoo sys-apps/baselayout: 2.3::gentoo sys-apps/openrc: 0.26.3::gentoo sys-apps/sandbox: 2.10-r3::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69::gentoo sys-devel/automake: 1.11.6-r1::gentoo, 1.14.1::gentoo, 1.15-r2::gentoo sys-devel/binutils: 2.26.1::gentoo, 2.28-r2::gentoo sys-devel/gcc: 5.4.0-r3::gentoo sys-devel/gcc-config: 1.7.3::gentoo sys-devel/libtool: 2.4.6-r3::gentoo sys-devel/make: 4.2.1::gentoo sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers) sys-libs/glibc: 2.23-r4::gentoo Repositories: gentoo location: /usr/portage sync-type: git sync-uri: https://github.com/gentoo-mirror/gentoo priority: -1000 Portage-local location: /usr/local/portage masters: gentoo priority: 0 saruman_common_overlay location: /var/db/repos/saruman_common_overlay sync-type: git sync-uri: https://git.benesovi.eu/saruman/saruman_common_overlay.git masters: gentoo Installed sets: @steam ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA Oracle-BCLA-JavaSE skype-4.0.0.7-copyright AdobeFlash-11.x" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=ivybridge -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /etc/stunnel/stunnel.conf /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.3/conf /usr/share/themes/oxygen-gtk/gtk-2.0 /usr/share/themes/oxygen-gtk/gtk-3.0" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo" CXXFLAGS="-march=ivybridge -O2 -pipe" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned 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="cs_CZ.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j9" 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 --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="X a52 aac acpi alsa amd64 avahi bash-completion berkdb bluetooth branding bzip2 cairo cdda cddb cdr cdrom cli cracklib crypt cups custom-optimization cxx dbus declarative dri dri3 drm dts dvb dvd dvdr emboss encode exif fam fat ffmpeg firefox flac fortran gdbm gif gimp glamor gpm iconv icq icu ipv6 jabber java jemalloc jpeg kde kipi kwallet lcms ldap libnotify lm_sensors mad magic mng modules mp3 mp4 mpeg multilib multimedia ncurses networkmanager nfs nfsdcld nfsidmap nfsv3 nfsv4 nls nptl nsplugin ntfs ntp offensive ogg opengl openmp oscar pam pango pcre pcsc-lite pdf phonon plasma pm-utils png policykit ppds pulseaudio qml qt3support qt4 qt5 readline samba savedconfig scanner sdl seccomp semantic-desktop session slp smartcard sna sound spell ssl startup-notification svg system-boost system-cairo system-ffmpeg system-icu system-jpeg system-libvpx system-sqlite system-wine systemd tcpd thumbnail thumbnails tiff truetype udev udisks unicode upnp upower usb usbredir vaapi vorbis vpx vulkan webgl widevine widgets wifi wxwidgets x264 x265 xattr xcb xcomposite xinerama xml xscreensaver xv xvid xvmc zeroconf zlib zsh-completion" 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="canon 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 isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" L10N="cs" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer pdfimport" LINGUAS="cs" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" QEMU_SOFTMMU_TARGETS="arm i386 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby21 ruby22" SANE_BACKENDS="net" USERLAND="GNU" VIDEO_CARDS="i965 intel" 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" USE_PYTHON="2.7" Unset: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Ditto
The split of avidemux to: avidemux, avidemux-core and avidemux-plugins is a total mess :S The QT5 is not build here too... Most of the cmake variables passed by the ebuild (when all IUSE flags are set, especially "qt5 -qt4") are not taken into consideration at all and thus the application relies entirely on its auto-detect mechanisms... Look at the messages after configure: 1. Of avidemux: -- Generating done CMake Warning: Manually-specified variables were not used by the project: AVIDEMUX_SOURCE_DIR ENABLE_QT5 LIBVA VDPAU XVBA 2. Of avidemux-core: -- Generating done CMake Warning: Manually-specified variables were not used by the project: XVBA 3. Of avidemux-plugins -- Generating done CMake Warning: Manually-specified variables were not used by the project: AFTEN ALSA DCAENC FAAC FAAD FDK_AAC JACK LAME LIBDCA LIBVORBIS NVENC OPENCORE_AMRNB OPENCORE_AMRWB OPUS OSS PULSEAUDIOSIMPLE TWOLAME USE_EXTERNAL_LIBMP4V2 VDPAU VORBIS VPXDEC XVID XVIDEO
(In reply to PhobosK from comment #3) > The split of avidemux to: avidemux, avidemux-core and avidemux-plugins is a > total mess The problem is not the split, but there are many bugs in the ebuilds, e.g.: 1. dependence on nonexisting packages ati-drivers xvba-video 2. the setting of environment variables/options necessary for qt4/qt5 is probably not correct/complete 3. underlinking with gold (this is an upstream bug easy to fix) 4. breaks when CMAKE_MAKEFILE_GENERATOR=ninja Actually, I am wondering how repoman could accept 1; there are also other possible repoman complains (nvenc not always filtered through amd64; USE="qt4 qt5" could be used together, but only one takes effect). Just a few moments ago I cleaned up the avidemux{,-core,-plugins} ebuilds in the mv overlay https://github.com/vaeth/mv-overlay which fix all the above issues and are tested with qt5. They now look rather similar to the ebuilds in the gentoo repository to make it easier for you to copy from them.
Oddly enough if both qt4 and qt5 flags are set the following binaries get built: avidemux3_cli avidemux3_jobs_qt5 avidemux3_qt5 And with -qt4 qt5 only avidemux3_cli gets built.
@Martin Väth: I've tried your ebuilds a few hours ago. They don't work either with similar error messages.
(In reply to Berthold Humkamp from comment #6) > @Martin Väth: [...] similar error messages Which error messages? There are no error messages in this bug. This bug is about qt5 binaries not building (without error messages). > Oddly enough if both qt4 and qt5 flags are set the following binaries get built This is not really odd, because e.g. initialiation of GUI happens only if USE=qt4 is set. As I mentioned, the qt4/qt5 variables are rather messed up in the ebuild from the gentoo repository.
(In reply to Martin Väth from comment #7) > (In reply to Berthold Humkamp from comment #6) > > @Martin Väth: [...] similar error messages > > Which error messages? There are no error messages in this bug. > This bug is about qt5 binaries not building (without error messages). > > > Oddly enough if both qt4 and qt5 flags are set the following binaries get built > > This is not really odd, because e.g. initialiation of GUI happens only if > USE=qt4 is set. As I mentioned, the qt4/qt5 variables are rather messed up > in the ebuild from the gentoo repository. Sorry, for didn't have looked more deeply into this thread: Emerging stopped with an error message with USE="-qt4 qt5" - I'll report the files later, when sitting at that PC. Thereafter I'll try with both flags enabled.
Ok, at first my problems with changing the USE-Flags: #> USE="qt4 qt5" emerge avidemux These are the packages that would be merged, in reverse order: Calculating dependencies - !!! Problem resolving dependencies for media-video/avidemux ... done! !!! The ebuild selected to satisfy "avidemux" has unmet requirements. - media-video/avidemux-2.6.20::mv USE="nls opengl qt4 qt5 sdl xv -debug -nvenc -vaapi -vdpau" ABI_X86="(64)" LINGUAS="de -ca -cs -el -es -fr -it -ja -pt_BR -ru -sr -sr@latin -tr" VIDEO_CARDS="(-fglrx)" The following REQUIRED_USE flag constraints are unsatisfied: qt5? ( !qt4 ) #> USE="qt4 -qt5" emerge avidemux These are the packages that would be merged, in reverse order: Calculating dependencies... done! The following USE changes are necessary to proceed: (see "package.use" in the portage(5) man page for more details) # required by avidemux (argument) > =media-video/avidemux-2.6.20 -qt4
Created attachment 482876 [details] build.log
Created attachment 482878 [details] environment
Created attachment 482880 [details] emerge --info '=media-video/avidemux-2.6.20::mv'
Created attachment 482882 [details] emerge -pqv '=media-video/avidemux-2.6.20::mv'
Ignore last line of comment #9, please. I got the attachments whith USE="-qt4 qt5".
> qt5? ( !qt4 ) I put this to REQUIRED_USE in the mv overlay. (This is not the case in the gentoo repository.) Whether it should be there or not is a political issue; I think it is is clearer if you get an error that your USE=qt4 would actually have no effect. Future portage versions will probably automatically deselect qt4 in such a situation. Concerning your compilation issue: The relevant error message is : Qt requires a C++11 compiler and yours does not seem to be that. This is discussed in bug 623178 (You use <gcc-6 which does not default to C++11 or newer, so a corresponding compiler flag has to be passed.) If you have synced the mv overlay recently, this error should not appear, since I add this flag since some days...
(In reply to Martin Väth from comment #15) > > Concerning your compilation issue: The relevant error message is > : Qt requires a C++11 compiler and yours does not seem to be that. > > This is discussed in bug 623178 > (You use <gcc-6 which does not default to C++11 or newer, so a corresponding > compiler flag has to be passed.) > > If you have synced the mv overlay recently, this error should not appear, > since I add this flag since some days... I think, I synced yesterday in the morning before emerging avidemux, but maybe I'm wrong. I've synced today and the error is gone now! - Thanks a lot! I use the last non-keyworded version 5.4 of gcc as the system is mostly built on stable packages. I don't think it is suitable to change to a newer version of gcc only for QT and related packages and switch back to build all others. Am I wrong?
I encountered this issue as well, with the ::portage package. Specifically, with USE="qt5 -qt4" I get no avidemux3_qt5; however, with USE="qt5 qt4" this binary gets built.
> however, with USE="qt5 qt4" this binary gets built. But avidemux3_qt4 isn't built in this case.
Created attachment 487552 [details, diff] simplified patch for ebuilds Same problems here. I use this simplified patch for the ebuilds to fix it.
Confirmed. localhost / # emerge -pv avidemux These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ~] media-video/avidemux-2.6.20:2.6::gentoo USE="nls qt5 xv -debug -nvenc -opengl -qt4 -sdl -vaapi -vdpau" LINGUAS="-ca -cs -de -el -es -fr -it -ja -pt_BR -ru -sr -sr@latin -tr" VIDEO_CARDS="(-fglrx)" 0 KiB Total: 1 package (1 reinstall), Size of downloads: 0 KiB localhost / # equery f avidemux * Searching for avidemux ... * Contents of media-video/avidemux-2.6.20: /usr /usr/bin /usr/bin/avidemux3_cli /usr/include /usr/include/avidemux /usr/include/avidemux/2.6 /usr/include/avidemux/2.6/cli /usr/include/avidemux/2.6/cli/ADM_UIs /usr/include/avidemux/2.6/cli/ADM_UIs/ADM_UI_Cli6_export.h /usr/include/avidemux/2.6/cli/config.h /usr/lib64 /usr/lib64/libADM_UI_Cli6.so /usr/lib64/libADM_render6_cli.so /usr/share /usr/share/applications /usr/share/applications/avidemux-2.6.desktop /usr/share/doc /usr/share/doc/avidemux-2.6.20 /usr/share/doc/avidemux-2.6.20/AUTHORS /usr/share/doc/avidemux-2.6.20/README /usr/share/pixmaps /usr/share/pixmaps/avidemux-2.6.png localhost / #
I can confirm that the attached patch to the ebuild correctly creates the avidemux3_qt5 executable with -qt4 qt5 USE flags.
PR: https://github.com/gentoo/gentoo/pull/5835
(In reply to Tom Dexter from comment #21) > I can confirm that the attached patch to the ebuild correctly creates the > avidemux3_qt5 executable with -qt4 qt5 USE flags. Have you tried this patch with the new avidemux-2.7.0 ?
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c4b55af209d0d462e917d437f19633169004af57 commit c4b55af209d0d462e917d437f19633169004af57 Author: Peter Levine <plevine457@gmail.com> AuthorDate: 2017-10-01 21:25:52 +0000 Commit: Alexis Ballier <aballier@gentoo.org> CommitDate: 2017-10-04 08:01:42 +0000 media-video/avidemux: Fix missing QT5 binaries Bug: https://bugs.gentoo.org/623346 Package-Manager: Portage-2.3.10, Repoman-2.3.3 media-video/avidemux/avidemux-2.6.20.ebuild | 4 +++- media-video/avidemux/avidemux-9999.ebuild | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-)}