When emerging =sys-devel/gettext-0.18.2 without a C++ compiler installed on the system, the build fails at the compile (not configure!) stage with: i686-pc-linux-gnu-gcc: error: autosprintf.cc: C++ compiler not installed on this system The ebuild should express a build dependency on a version of gcc with the 'cxx' flag enabled, to ensure the presence of a C++ compiler. (Unless we have some other supported mechanism for providing C++ compilers I don't know about.)
See, http://bugs.gentoo.org/show_bug.cgi?id=460792 As in, sys-devel/gettext has line `epunt_cxx` in src_prepare() function: $ grep epunt_cxx /usr/portage/sys-devel/gettext/gettext-0.18.2.ebuild epunt_cxx That will apply this patch: http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/ELT-patches/nocxx/ The patch should remove the check for C++ compiler, which is why you are propably seeing it now fail at compile phase instead of configure phase Can you try older version, like gettext-0.18.1.1-r3? Same problem there? Also, you need to include complete build.log here along with output of `emerge --info`
Not trivially; that system is now moving onward in its install phase to building a C++-enabled gcc. I've got a handful of other VMs I plan to construct on the same path; I'll try walking back versions then. Sleep time, now.
> The ebuild should express a build dependency on a version of gcc with the > 'cxx' flag enabled, to ensure the presence of a C++ compiler. (Unless we > have some other supported mechanism for providing C++ compilers I don't know > about.) I think gcc should be built with c++ support mandatorily (no "cxx" USE flag at all). There's no life in Gentoo without c++. With the cxx USE there and optional someone might try switching it off and destroying their system; gcc cannot be recompiled then either. All the essential compilers/interpreters are mandatory no matter how USE is set, except for c++.
(In reply to comment #3) > > The ebuild should express a build dependency on a version of gcc with the > > 'cxx' flag enabled, to ensure the presence of a C++ compiler. (Unless we > > have some other supported mechanism for providing C++ compilers I don't know > > about.) > > I think gcc should be built with c++ support mandatorily (no "cxx" USE flag > at all). There's no life in Gentoo without c++. With the cxx USE there and > optional someone might try switching it off and destroying their system; gcc > cannot be recompiled then either. All the essential compilers/interpreters > are mandatory no matter how USE is set, except for c++. untrue, you can build an embedded system with C compiler only and there is no need to kill that possibility for users however it's true USE="-cxx" is something that is not widely tested and disabling it on already built system is... well, stupid
(In reply to comment #4) > > > > untrue, you can build an embedded system with C compiler only and there is > no need to kill that possibility for users In a year or so, it might be a bit more true - while gcc 4.8 might not need to install g++, it will build it during bootstrap to build itself.
(In reply to comment #5) > (In reply to comment #4) > > > > > > > untrue, you can build an embedded system with C compiler only and there is > > no need to kill that possibility for users > > In a year or so, it might be a bit more true - while gcc 4.8 might not need > to install g++, it will build it during bootstrap to build itself. As I understand it, a C++ compiler will be required to build g++, which will then be used to build all of gcc.[1] So >=gcc-4.8 will need gcc[cxx] as a bdep as well. [1] Not as weird as it sounds; a C compiler is required to build gcc, which is in turn used to build...gcc. Which then gets installed. That's the *current* state of things. gcc 4.8's build process simply uses C++ instead of C.
(In reply to comment #3) > > The ebuild should express a build dependency on a version of gcc with the > > 'cxx' flag enabled, to ensure the presence of a C++ compiler. (Unless we > > have some other supported mechanism for providing C++ compilers I don't know > > about.) > > I think gcc should be built with c++ support mandatorily (no "cxx" USE flag > at all). There's no life in Gentoo without c++. With the cxx USE there and > optional someone might try switching it off and destroying their system; gcc > cannot be recompiled then either. All the essential compilers/interpreters > are mandatory no matter how USE is set, except for c++. This probably belongs in a discussion on gentoo-dev or on whichever mailing list handles core system.
as noted in Bug 466056, there are no plans to track this in DEPENDs if gettext-0.18.2 can be built w/out C++, let's make it work. otherwise, drop the epunt_cxx and close this bug.
*** This bug has been marked as a duplicate of bug 448752 ***