82 | const_bool_nodef(fpu_check_inexact, true); | ^ ./fpu-none_inlines.hh:68:1: note: previous declaration is here 68 | fpu_check_inexact() { | ^ In file included from ppl-config.cc:25: ./ppl.hh:101798:33: error: no member named 'mem_fun_ref' in namespace 'std'; did you mean 'widen_fun_ref'? 101798 | pairwise_apply_assign(y, std::mem_fun_ref(&D::meet_assign)); ------------------------------------------------------------------- This is an unstable amd64 chroot image at a tinderbox (==build bot) name: 17.1_systemd_clang-20231210-041514 ------------------------------------------------------------------- gcc-config -l: [1] x86_64-pc-linux-gnu-10 [2] x86_64-pc-linux-gnu-13 * clang/llvm (if any): clang version 17.0.6 Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/lib/llvm/17/bin Configuration file: /etc/clang/x86_64-pc-linux-gnu-clang.cfg /usr/lib/llvm/17 17.0.6+libcxx Python 3.11.7 Available Rust versions: [1] rust-bin-1.74.1 * The following VMs are available for generation-2: 1) Eclipse Temurin JDK 11.0.20.1_p1 [openjdk-bin-11] 2) Eclipse Temurin JDK 17.0.8.1_p1 [openjdk-bin-17] *) Eclipse Temurin JDK 21.0.1_p12 [openjdk-bin-21] 4) Eclipse Temurin JDK 8.382_p05 [openjdk-bin-8] Available Java Virtual Machines: [1] openjdk-bin-8 [2] openjdk-bin-11 [3] openjdk-bin-17 [4] openjdk-bin-21 system-vm The Glorious Glasgow Haskell Compilation System, version 9.0.2 php cli (if any): go version go1.21.5 linux/amd64 HEAD of ::gentoo commit a8789573aab264d541f3e21f2ad00a71b13f3e46 Author: Repository mirror & CI <repomirrorci@gentoo.org> Date: Wed Dec 13 18:31:56 2023 +0000 2023-12-13 18:31:56 UTC emerge -qpvO dev-libs/ppl [ebuild N ] dev-libs/ppl-1.2-r5 USE="cxx lpsol -cdd -doc (-pch) -test"
Created attachment 879264 [details] emerge-info.txt
Created attachment 879265 [details] dev-libs:ppl-1.2-r5:20231213-191816.log.xz
Created attachment 879266 [details] emerge-history.txt.xz
Created attachment 879267 [details] environment
Created attachment 879268 [details] etc.clang.tar.xz
Created attachment 879269 [details] etc.portage.tar.xz
Created attachment 879270 [details] logs.tar.xz
Created attachment 879271 [details] qlist-info.txt.xz
Created attachment 879272 [details] temp.tar.xz
Created attachment 879273 [details] var.tmp.clang.tar.xz
The immediate error is easy to fix with, append-cxxflags -std=c++14 but now I'm getting. /usr/bin/x86_64-pc-linux-gnu-ld.bfd: ./.libs/libppl.so: undefined reference to `operator<<(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, __mpz_struct const*)' and /usr/bin/x86_64-pc-linux-gnu-ld.bfd: ./.libs/libppl.so: undefined reference to `operator>>(std::__1::basic_istream<char, std::__1::char_traits<char> >&, __mpz_struct*)' when attempting to build with CXXFLAGS="-stdlib=libc++" CC=clang CXX=clang++.
Are building(In reply to Michael Orlitzky from comment #11) > The immediate error is easy to fix with, > > append-cxxflags -std=c++14 > > but now I'm getting. > > /usr/bin/x86_64-pc-linux-gnu-ld.bfd: ./.libs/libppl.so: undefined reference > to `operator<<(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, > __mpz_struct const*)' > > and > > /usr/bin/x86_64-pc-linux-gnu-ld.bfd: ./.libs/libppl.so: undefined reference > to `operator>>(std::__1::basic_istream<char, std::__1::char_traits<char> >&, > __mpz_struct*)' > > when attempting to build with CXXFLAGS="-stdlib=libc++" CC=clang CXX=clang++. Have you compiled gmp with CXXFLAGS="-stdlib=libc++" as well? Because in my experience, you cannot easily mix libraries compiled with libc++ and gcc's libstdc++.
(In reply to François Bissey from comment #12) > > Have you compiled gmp with CXXFLAGS="-stdlib=libc++" as well? Because in my > experience, you cannot easily mix libraries compiled with libc++ and gcc's > libstdc++. No, instead I've been chasing down red herrings in the use of iosfwd vs iostream. You're probably right, thanks.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8040a882efbda6b9bda2e4b2bbce6cc2b98bce8 commit c8040a882efbda6b9bda2e4b2bbce6cc2b98bce8 Author: Michael Orlitzky <mjo@gentoo.org> AuthorDate: 2023-12-15 21:03:26 +0000 Commit: Michael Orlitzky <mjo@gentoo.org> CommitDate: 2023-12-15 23:17:35 +0000 dev-libs/ppl: build with -std=c++14 PPL isn't ready for c++17-by-default yet. Closes: https://bugs.gentoo.org/919850 Signed-off-by: Michael Orlitzky <mjo@gentoo.org> dev-libs/ppl/ppl-1.2-r5.ebuild | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)
(In reply to François Bissey from comment #12) > > Have you compiled gmp with CXXFLAGS="-stdlib=libc++" as well? The gmp ebuild discreetly strips that flag from your CXXFLAGS, but yeah, that was the problem. Thanks again.