Summary: | media-sound/ncmpcpp-0.7_beta1 with dev-libs/boost-1.57 - In file included from bindings.cpp:24: /usr/include/boost/range/detail/any_iterator.hpp:131:15: error: ‘postfix_increment_proxy’ is not a class | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | zlg (RETIRED) <zlg> |
Component: | Current packages | Assignee: | Jeroen Roovers (RETIRED) <jer> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | 1i5t5.duncan, cpp+disabled, gentoo-user, kamil.kuduk, moonlapse81, sbraz, sound, wired |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | https://gitweb.gentoo.org/repo/gentoo.git/commit/media-sound/ncmpcpp?id=0a0a22eb6a385d89b2ef35d4f95a6d6c81202e93 | ||
See Also: | https://svn.boost.org/trac/boost/ticket/10754 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
build.log
Boost 1.57 patch Ebuild patch for 0.7 Ebuild patch for 9999 |
Description
zlg (RETIRED)
![]() Portage 2.2.23 (python 2.7.10-final-0, !../../usr/portage/profiles/default/linux/amd64/13.0, gcc-4.9.3, glibc-2.22-r1, 4.1.6-gentoo x86_64) ================================================================= System Settings ================================================================= System uname: Linux-4.1.6-gentoo-x86_64-AMD_Phenom-tm-_II_X6_1090T_Processor-with-gentoo-2.2 KiB Mem: 16431784 total, 12500460 free KiB Swap: 0 total, 0 free sh bash 4.3_p42 ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1 app-shells/bash: 4.3_p42::gentoo dev-java/java-config: 2.2.0::gentoo dev-lang/perl: 5.22.0::gentoo dev-lang/python: 2.7.10-r2::gentoo, 3.4.3-r2::gentoo, 3.5.0-r1::gentoo dev-util/cmake: 3.3.2-r1::gentoo dev-util/pkgconfig: 0.29::gentoo sys-apps/baselayout: 2.2::gentoo sys-apps/openrc: 0.18.3::gentoo sys-apps/sandbox: 2.9::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69-r1::gentoo sys-devel/automake: 1.11.6-r1::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo sys-devel/binutils: 2.25.1-r1::gentoo sys-devel/gcc: 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.3::gentoo (virtual/os-headers) sys-libs/glibc: 2.22-r1::gentoo Repositories: gentoo location: /home/daniel/projects/gentoo sync-type: git sync-uri: https://github.com/gentoo/gentoo.git priority: -1000 gamerlay location: /var/lib/layman/gamerlay masters: gentoo priority: 50 steam-overlay location: /var/lib/layman/steam-overlay masters: gentoo priority: 50 sunrise location: /var/lib/layman/sunrise masters: gentoo priority: 50 Installed sets: @customizing, @dev, @games ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt" 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/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--ask-enter-invalid" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs cgroup config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms sign strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="ftp://ftp.wallawalla.edu/pub/mirrors/ftp.gentoo.org http://gentoo.osuosl.org/ http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://mirror.usu.edu/mirrors/gentoo/ http://www.gtlib.gatech.edu/pub/gentoo" INSTALL_MASK="/usr/lib/systemd/system /etc/systemd" LANG="en_US.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j7" 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 acl alsa amd64 berkdb bzip2 cairo cli cracklib crypt cups cxx dbus dri fam ffmpeg flac fortran ftp g3dvl gdbm gpm gtk iconv imlib ipv6 jpeg lame lua mmx mmxext modules multilib ncurses netifrc nls nptl ogg opengl openmp openrc pam pcre png python qt4 readline sdl seccomp session sqlite sse sse2 ssl svg tcpd theora truetype udev unicode vdpau vorbis webm xft xinerama xpm xvmc 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="3dnow 3dnowext mmx mmxext popcnt sse sse2 sse3 sse4a" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev joystick wacom" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en en_US en_GB" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby19 ruby20" SANE_BACKENDS="hp hp4200" USERLAND="GNU" VIDEO_CARDS="nvidia" 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, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON emerge -pqv: [ebuild U ] media-sound/ncmpcpp-0.7_beta1 [0.6.7] USE="curl taglib unicode -clock -outputs -visualizer" Created attachment 416266 [details]
build.log
Build log.
*** Bug 565106 has been marked as a duplicate of this bug. *** Please post your `emerge -vp dev-libs/boost' output in a comment. (In reply to Jeroen Roovers from comment #5) > Please post your `emerge -vp dev-libs/boost' output in a comment. These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] dev-libs/boost-1.57.0:0/1.57.0::gentoo USE="icu nls python threads -context -debug -doc -mpi -static-libs -tools" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7 python3_4 -python3_3" 0 KiB Total: 1 package (1 reinstall), Size of downloads: 0 KiB so, as mentioned in duplicate bug, its still a reasonable to keep 0.7* releases masked because the fix is available in masked versions of boost... (In reply to Oleg from comment #7) > so, as mentioned in duplicate bug, its still a reasonable to keep 0.7* > releases masked because the fix is available in masked versions of boost... Could you please stop the noise. Thanks. Could you please, behave, you're a ebuild maintainer, who added a broken version. OK, so you can't stop. Good to know. i can stop, obviously, when ebuild bump is rationalized and dev flow is consistent and checked for a build failures. You're no one to tell me to stop making noise because of *your* flawed ebuilds. 0.7* version needs boost-1.58 or higher, which is masked but your narrow mind can not handle this, because you trying to find an excuse behind screwed versions you committing to tree. (In reply to Oleg from comment #11) > i can stop, obviously, when ebuild bump is rationalized and dev flow is > consistent and checked for a build failures. You're no one to tell me to > stop making noise because of *your* flawed ebuilds. 0.7* version needs > boost-1.58 or higher, which is masked but your narrow mind can not handle > this, because you trying to find an excuse behind screwed versions you > committing to tree. Could you please stop insulting me? 0.7_beta1 builds and works fine with boost 1.56.0. Only 1.57.0 is bad and the referenced boost bug report acknowledges that. i can stop. it was you, who started the high tone about stopping making noise. This always returns similar response in infinite power. || ( >=boost-1.58 <boost-1.57 ) dependency could be applied to 0.7* ebuilds, however this would need unnecessary rebuilds due to boost downgrade. mask is just a lesser evil. (In reply to Jeroen Roovers from comment #12) > [snip] > > 0.7_beta1 builds and works fine with boost 1.56.0. Only 1.57.0 is bad and > the referenced boost bug report acknowledges that. So will masking dev-libs/boost-1.57.0 fix ncmpcpp building, or should I mask media-sound/ncmpcpp-0.7_beta1? I have no clue what's going on wrt the conflict, but I appreciate your attention on this bug. (In reply to Daniel Campbell from comment #15) > > So will masking dev-libs/boost-1.57.0 fix ncmpcpp building, or should I mask > media-sound/ncmpcpp-0.7_beta1? FWIW, I figured it's a version-specific boost bug so masked =dev-libs/boost-1.57.0 here. It only triggered the boost-build and boost downgrades, no further rebuilds. Whether there's packages that should have their boost dep subslotted and don't, thus triggering hidden breakage with the boost downgrade, I don't know, but so far, so good. =:^) If I don't reply further, take that as indication it didn't noticeably break anything. No guarantee for people with different packages installed, but no problems with the boost downgrade here, no huge set of rebuilds and nothing seemed to break, so masking the problematic boost was apparently the correct decision for me. Tho we are talking an ncmpcpp beta, so some may prefer to downgrade it, particularly if like me, you have other mpd clients installed, making ncmpcpp a very minor package compared to others that depend on boost. I'm not so sure this bug is fixed. The ebuild has `!=dev-libs/boost-1.57.0`, which some packages in tree depend on, so I'm getting a block: [blocks B ] dev-libs/boost:0/1.57.0 ("dev-libs/boost:0/1.57.0" is blocking media-sound/ncmpcpp- 0.7) Total: 57 packages (54 upgrades, 1 new, 1 in new slot, 1 reinstall), Size of downloads: 415,386 KiB Conflict: 1 block (1 unsatisfied) * Error: The above package list contains packages which cannot be * installed at the same time on the same system. (media-sound/ncmpcpp-0.7:0/0::gentoo, ebuild scheduled for merge) pulled in by media-sound/ncmpcpp required by @selected (dev-libs/boost-1.57.0:0/1.57.0::gentoo, installed) pulled in by >=dev-libs/boost-1.47 required by (media-libs/libpagemaker-0.0.2:0/0::gentoo, installed) >=dev-libs/boost-1.36 required by (media-gfx/inkscape-0.91-r1:0/0::gentoo, ebuild scheduled for merge) dev-libs/boost:0/1.57.0=[threads] required by (dev-libs/libixion-0.9.1:0/0.10::gentoo, installed) dev-libs/boost:0/1.57.0= required by (app-office/ledger-3.1-r1:0/0::gentoo, installed) dev-libs/boost:0/1.57.0= required by (dev-libs/librevenge-0.0.2:0/0::gentoo, installed) >=dev-libs/boost-1.40:= required by (media-libs/qt-gstreamer-1.2.0-r1:0/0::gentoo, installed) dev-libs/boost:= required by (app-office/ledger-3.1-r1:0/0::gentoo, installed) dev-libs/boost:= required by (dev-libs/librevenge-0.0.2:0/0::gentoo, installed) dev-libs/boost:0/1.57.0= required by (dev-cpp/libcmis-0.5.0-r1:0.5/0.5::gentoo, installed) >=dev-libs/boost-1.51.0:0/1.57.0= required by (dev-libs/liborcus-0.7.1:0/0::gentoo, installed) dev-libs/boost:= required by (app-text/libwps-0.4.2:0/0::gentoo, installed) >=dev-libs/boost-1.46 required by (app-text/libabw-0.1.1:0/0::gentoo, installed) >=dev-libs/boost-1.46 required by (app-text/libetonyek-0.1.3:0/0::gentoo, installed) >=dev-libs/boost-1.46 required by (media-libs/libvisio-0.1.3-r1:0/0::gentoo, installed) dev-libs/boost:= required by (dev-cpp/libcmis-0.5.0-r1:0.5/0.5::gentoo, installed) dev-libs/boost:0/1.57.0= required by (dev-util/mdds-0.12.1:0/0.12.1::gentoo, installed) dev-libs/boost:0/1.57.0= required by (app-text/libwps-0.4.2:0/0::gentoo, installed) >=dev-libs/boost-1.40:0/1.57.0= required by (media-libs/qt-gstreamer-1.2.0-r1:0/0::gentoo, insta lled) dev-libs/boost required by (media-libs/libcdr-0.1.1:0/0::gentoo, installed) >=dev-libs/boost-1.55:= required by (app-office/libreoffice-5.0.3.2:0/0::gentoo, installed) dev-libs/boost:=[threads] required by (dev-libs/libixion-0.9.1:0/0.10::gentoo, installed) dev-libs/boost:= required by (app-text/libebook-0.1.2:0/0::gentoo, installed) dev-libs/boost:0/1.57.0= required by (app-text/libebook-0.1.2:0/0::gentoo, installed) >=dev-libs/boost-1.51.0:= required by (dev-libs/liborcus-0.7.1:0/0::gentoo, installed) dev-libs/boost required by (app-text/libmspub-0.1.2:0/0::gentoo, installed) >=dev-libs/boost-1.46 required by (app-text/libodfgen-0.1.4:0/0::gentoo, installed) >=dev-libs/boost-1.55:0/1.57.0= required by (app-office/libreoffice-5.0.3.2:0/0::gentoo, install ed) dev-libs/boost:= required by (dev-util/mdds-0.12.1:0/0.12.1::gentoo, installed) dev-libs/boost required by (media-sound/mpd-0.19.11:0/0::gentoo, installed) >=dev-libs/boost-1.46:0/1.57.0= required by (app-text/libmwaw-0.3.6:0/0::gentoo, installed) >=dev-libs/boost-1.46:= required by (app-text/libmwaw-0.3.6:0/0::gentoo, installed) dev-libs/boost:=[icu] required by (media-sound/ncmpcpp-0.7:0/0::gentoo, ebuild scheduled for mer ge) dev-libs/boost:=[nls,threads] required by (media-sound/ncmpcpp-0.7:0/0::gentoo, ebuild scheduled for merge) ------------ Technically this could just be the fault of other ebuilds, but it's still somewhat of a problem. I can't update my system now unless I fiddle with ncmpcpp's ebuild. (In reply to Daniel Campbell from comment #18) > I'm not so sure this bug is fixed. The ebuild has `!=dev-libs/boost-1.57.0`, > which some packages in tree depend on, so I'm getting a block: If I'm reading your deps-list correctly, nothing actually deps on boost-1.57 at build-time yet. You have some installed packages that sub-slot-dep on it, but only because they were built against it and they runtime slot-dep against what they were built with. If you rebuild all of them (anything with :0/1.57.0= as a listed slot-dep) at the same time as the boost downgrade, you should be able to satisfy the blocker, as at that point you'll be rebuilding them so currently installed runtime slot-deps won't matter. But, you'll need to rebuild *all* of them at the same time as the attempted boost downgrade. (As I commented above, I didn't have a whole list here to downgrade at the same time, but that's evidently because I have different packages installed than you do.) If you miss one with that :0/1.57.0= slot-dep, the blocker will remain unsatisfied, as the remaining installed runtime slot-dep will continue to lock 1.57.0 in place. The alternative to downgrading boost and rebuilding all its runtime slotdeps at the same time, of course, would be to mask the ebuild with !=dev-libs/boost-1.57.0, allowing just that one package (ncmpcpp) to downgrade to a version that doesn't block the installed version of boost. So while it's boost that has the temporary incompatibility and thus boost that's technically at fault, thus my choice to downgrade it here as it didn't force a bunch of other rebuilds at the same time for me, given that you have a bunch of other runtime slot-deps that will need rebuilt at the same time if you downgrade boost, while that might technically be the best choice, the far simpler choice, for you, would be masking ncmpcpp-0.7* and letting it, as only the one single package, downgrade (or not try to upgrade) to something compatible with the boost you already have installed. It's arguably not the technically best solution, but it's the most convenient /workable/ solution for you, given the other boost-runtime-subslot-depending-packages you have installed, already runtime-subslot-depending on the 1.57.0 boost. (In reply to Duncan from comment #19) > (In reply to Daniel Campbell from comment #18) > > I'm not so sure this bug is fixed. The ebuild has `!=dev-libs/boost-1.57.0`, > > which some packages in tree depend on, so I'm getting a block: > > If I'm reading your deps-list correctly, nothing actually deps on boost-1.57 > at build-time yet. You have some installed packages that sub-slot-dep on > it, but only because they were built against it and they runtime slot-dep > against what they were built with. If you rebuild all of them (anything > with :0/1.57.0= as a listed slot-dep) at the same time as the boost > downgrade, you should be able to satisfy the blocker, as at that point > you'll be rebuilding them so currently installed runtime slot-deps won't > matter. > > But, you'll need to rebuild *all* of them at the same time as the attempted > boost downgrade. (As I commented above, I didn't have a whole list here to > downgrade at the same time, but that's evidently because I have different > packages installed than you do.) If you miss one with that :0/1.57.0= > slot-dep, the blocker will remain unsatisfied, as the remaining installed > runtime slot-dep will continue to lock 1.57.0 in place. > > The alternative to downgrading boost and rebuilding all its runtime slotdeps > at the same time, of course, would be to mask the ebuild with > !=dev-libs/boost-1.57.0, allowing just that one package (ncmpcpp) to > downgrade to a version that doesn't block the installed version of boost. > > So while it's boost that has the temporary incompatibility and thus boost > that's technically at fault, thus my choice to downgrade it here as it > didn't force a bunch of other rebuilds at the same time for me, given that > you have a bunch of other runtime slot-deps that will need rebuilt at the > same time if you downgrade boost, while that might technically be the best > choice, the far simpler choice, for you, would be masking ncmpcpp-0.7* and > letting it, as only the one single package, downgrade (or not try to > upgrade) to something compatible with the boost you already have installed. > It's arguably not the technically best solution, but it's the most > convenient /workable/ solution for you, given the other > boost-runtime-subslot-depending-packages you have installed, already > runtime-subslot-depending on the 1.57.0 boost. Thanks for the write-up. I fiddled with it last night. I had never masked boost-1.57.0 in the first place; just ncmpcpp-0.7_beta1, which seems to have been removed from the tree and 0.7 now has '!=dev-libs/boost-1.57.0'. Masking ncmpcpp-0.7* seems to have fixed this blocker for now. This feels like a stopgap solution until something else comes down the pike; do you think a boost upgrade -- when it comes around -- could fix a lot of this? ncmpcpp isn't the only package having qualms with boost lately. yes, it should. this is a regression in boost-1.57. it is neither present in 1.56, nor in 1.58, however last is masked. I agree, about such cases are confusing. What happened here, is that beta bump of ncmpcpp *not* checked against boost-1.57, which is the version everyone have on ~arch boxes, otherwise, during pre-bump test (if such ever performed), this failure supposed to be found. Developer of ncmpcpp here. This issue can be solved properly at boost level. I believe this is the relevant patch: https://github.com/boostorg/range/commit/1617a513d29b579d1cbda2af29b395ed31ee07e5 In can also be solved at ncmpcpp level by applying a patch from this bug report: http://bugs.musicpd.org/view.php?id=4352. The problem is that it also requires applying "-fpermissive" to compilation flags (that's why I chose not to merge it). Sadly, there is no sane workaround. I made a pull request based on Andrzej's comment and the proposed patch. Both 0.7 and 9999 compile and work fine. https://github.com/gentoo/gentoo/pull/496 (In reply to Louis Sautier from comment #23) > I made a pull request based on Andrzej's comment and the proposed patch. > Both 0.7 and 9999 compile and work fine. > https://github.com/gentoo/gentoo/pull/496 Please attach patches. Created attachment 419894 [details, diff]
Boost 1.57 patch
Created attachment 419896 [details, diff]
Ebuild patch for 0.7
Created attachment 419898 [details, diff]
Ebuild patch for 9999
(In reply to Jeroen Roovers from comment #24) > (In reply to Louis Sautier from comment #23) > > I made a pull request based on Andrzej's comment and the proposed patch. > > Both 0.7 and 9999 compile and work fine. > > https://github.com/gentoo/gentoo/pull/496 > > Please attach patches. Hi Jeroen, Did you get a chance to look at the patch? I think boost maintainers should explain first about their stabilisation plans, before we start patching random packages for a problem that might go away by itself. |