View previous topic :: View next topic |
Author |
Message |
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Wed Apr 23, 2008 4:14 pm Post subject: configure: error: C++ compiler not available |
|
|
Well, this just happened recently.
I started doing a Stage1 install on 3 boxes using 2008.0_beta1 (one i486 and two i586/mmx). Well, I've been getting this error and it's really annoying. This is the error I've been getting during the ./bootstrap.sh:
Code: | checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking C++ compiler g++ -O2 -march=i486 -pipe... no
configure: error: C++ compiler not available, see config.log for details
!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/dev-libs/gmp-4.2.2/work/gmp-4.2.2/config.log |
I'm hoping it's just isolated to i486 and not i586. I'll try 2007.0 and post the results. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54098 Location: 56N 3W
|
Posted: Wed Apr 23, 2008 5:53 pm Post subject: |
|
|
Simba7,
With a stage 1 install you can set your CHOST for your arch properly.
During what command do you get the error?
Moved to unsupported software as Stage 1 installs are not officaly supported. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Wed Apr 23, 2008 5:59 pm Post subject: |
|
|
I'm finding out g++ isn't in Stage1, but is on Stage 2 & 3. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54098 Location: 56N 3W
|
Posted: Wed Apr 23, 2008 6:07 pm Post subject: |
|
|
Simba7,
Thats correct. C++ is built before its needed with a stage 1.
It sounds like you are missing the
Code: | cd /usr/portage
scripts/bootstrap.sh | commands, which is what the stage 1 is.
That builds your tool chain including C++ _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Wed Apr 23, 2008 6:08 pm Post subject: |
|
|
I have those.. And it runs fine until it hits gmp-4.2.2, then it stops saying it can't find g++.
I've done these several times in the past to my boxes ranging from a 486 to a P4. It worked fine back in 2007.0 (4 months ago), but now it's a little screwy. |
|
Back to top |
|
|
MostAwesomeDude Guru
Joined: 12 Aug 2007 Posts: 373
|
Posted: Wed Apr 23, 2008 6:15 pm Post subject: |
|
|
*ahem*
So don't do that!
That is all. _________________ Don't believe the "n00b" under my name. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54098 Location: 56N 3W
|
Posted: Wed Apr 23, 2008 6:42 pm Post subject: |
|
|
Simba7,
The bootstrap should not try to build gmp.
Its still not clear how far through the stage 1 you have got. That would help immensely.
There is a little known and almost never used USE flag called nocxx which prevents C++ from being built.
Run emerge --info and make sure its not listed. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Wed Apr 23, 2008 7:19 pm Post subject: |
|
|
Ok.. Looks like it stops at lzma-utils during a ./bootstrap.sh.. Here's where it crashes:
Code: | >>> Emerging (4 of 12) app-arch/lzma-utils-4.32.5 to /
* lzma-4.32.5.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ]
* checking ebuild checksums ;-) ... [ ok ]
* checking auxfile checksums ;-) ... [ ok ]
* checking miscfile checksums ;-) ... [ ok ]
* checking lzma-4.32.5.tar.gz ;-) ... [ ok ]
>>> Unpacking source...
>>> Unpacking lzma-4.32.5.tar.gz to /var/tmp/portage/app-arch/lzma-utils-4.32.5/work
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/app-arch/lzma-utils-4.32.5/work/lzma-4.32.5 ...
* econf: updating lzma-4.32.5/config.guess with /usr/share/gnuconfig/config.guess
* econf: updating lzma-4.32.5/config.sub with /usr/share/gnuconfig/config.sub
./configure --prefix=/usr --host=i486-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --build=i486-pc-linux-gnu
checking if debugging code should be compiled... no
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for i486-pc-linux-gnu-g++... no
checking for i486-pc-linux-gnu-c++... no
checking for i486-pc-linux-gnu-gpp... no
checking for i486-pc-linux-gnu-aCC... no
checking for i486-pc-linux-gnu-CC... no
checking for i486-pc-linux-gnu-cxx... no
checking for i486-pc-linux-gnu-cc++... no
checking for i486-pc-linux-gnu-cl.exe... no
checking for i486-pc-linux-gnu-FCC... no
checking for i486-pc-linux-gnu-KCC... no
checking for i486-pc-linux-gnu-RCC... no
checking for i486-pc-linux-gnu-xlC_r... no
checking for i486-pc-linux-gnu-xlC... no
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl.exe... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking for C++ compiler default output file name...
configure: error: C++ compiler cannot create executables
See `config.log' for more details.
!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/app-arch/lzma-utils-4.32.5/work/lzma-4.32.5/config.log |
Here's /var/tmp/portage/app-arch/lzma-utils-4.32.5/work/lzma-4.32.5/config.log:
Code: | configure:2576: checking for C++ compiler version
configure:2583: g++ --version >&5
./configure: line 2584: g++: command not found
configure:2586: $? = 127
configure:2593: g++ -v >&5
./configure: line 2594: g++: command not found
configure:2596: $? = 127
configure:2603: g++ -V >&5
./configure: line 2604: g++: command not found
configure:2606: $? = 127
configure:2629: checking for C++ compiler default output file name
configure:2656: g++ -O2 -march=i486 -pipe conftest.cpp >&5
./configure: line 2657: g++: command not found |
Here's the "emerge --info"
Code: | Portage 2.1.5_rc6 (default/linux/x86/2008.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24.03-fd14 i686)
=================================================================
System uname: 2.6.24.03-fd14 i686 Intel(R) Celeron(R) CPU 2.00GHz
Timestamp of tree: Wed, 23 Apr 2008 17:15:02 +0000
app-shells/bash: 3.2_p17-r1
dev-lang/python: 2.4.4-r6
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox: 1.2.18.1-r2
sys-devel/autoconf: 2.61-r1
sys-devel/automake: 1.10
sys-devel/binutils: 2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool: 1.5.24
virtual/os-headers: 2.6.23-r3
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i486-pc-linux-gnu"
CFLAGS="-O2 -march=i486 -pipe"
CHOST="i486-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/terminfo"
CXXFLAGS="-O2 -march=i486 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ "
LDFLAGS=""
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="acl berkdb bzip2 cli cracklib crypt cups dri fortran gdbm gpm iconv ipv6 isdnlog midi mudflap ncurses nls nptl nptlonly openmp pam pcre perl pppd python readline reflection session spl ssl tcpd unicode x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="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 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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fbdev glint i810 mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa vga via vmware voodoo"
Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY |
|
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54098 Location: 56N 3W
|
Posted: Wed Apr 23, 2008 9:03 pm Post subject: |
|
|
Simba7
A few things,
bootstrap.sh builds Code: | [ebuild R ] sys-devel/gettext-0.17 USE="-acl* -doc* -emacs* -openmp*"
[ebuild R ] sys-kernel/linux-headers-2.6.25-r1
[ebuild R ] sys-libs/zlib-1.2.3-r1
[ebuild R ] sys-apps/baselayout-2.0.0
[ebuild R ] sys-devel/binutils-2.18-r1
[ebuild R ] sys-apps/texinfo-4.11-r1
[ebuild R ] sys-devel/gcc-4.2.3 USE="bootstrap* -doc* -fortran* -gtk* -mudflap* -openmp*"
[ebuild R ] sys-libs/glibc-2.7-r2
| pp-arch/lzma-utils ia not listed and its not pulled in by your USE flags as they are not used during stage 1.
Your system shows as Code: | System uname: 2.6.24.03-fd14 i686 Intel(R) Celeron(R) CPU 2.00GHz |
The i686 means its quite capable of running a i686 install from the i686 stage 3, which will get you where you want to be much faster than a stage 1 as you avoid the repeated tool chain builds. If you are building for older CPUs, using a chroot, thats slightly different
What does Code: | cd /usr/portage
scripts/bootstrap.sh -p | show as a package list for you ? _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Wed Apr 23, 2008 9:39 pm Post subject: |
|
|
I'm building an i486 on a i686 box for an i486. It'd take months if I compiled it on a i486.
Here's the result of ./bootstrap.sh -p:
Code: | (chroot) slappy scripts # ./bootstrap.sh -p
Gentoo Linux; http://www.gentoo.org/
Copyright 1999-2008 Gentoo Foundation; Distributed under the GPLv2
-------------------------------------------------------------------------------
[[ (0/3) Locating packages ]]
* Using baselayout : sys-apps/baselayout
* Using portage : virtual/portage
* Using os-headers : >=sys-kernel/linux-headers-2.6.25-r1
* Using binutils : sys-devel/binutils
* Using gcc : sys-devel/gcc
* Using gettext : gettext
* Using libc : virtual/libc
* Using texinfo : sys-apps/texinfo
* Using zlib : sys-libs/zlib
* Using ncurses : sys-libs/ncurses
-------------------------------------------------------------------------------
[[ (1/3) Configuring environment ]]
* GENTOO_MIRRORS="http://gentoo.osuosl.org/ "
* PORTDIR="/usr/portage"
* DISTDIR="/usr/portage/distfiles"
* PKGDIR="/usr/portage/packages"
* PORTAGE_TMPDIR="/var/tmp"
* CFLAGS="-O2 -march=i486 -pipe"
* CHOST="i486-pc-linux-gnu"
* CXXFLAGS="-O2 -march=i486 -pipe"
* MAKEOPTS="-j2"
* ACCEPT_KEYWORDS="x86 ~x86"
* FEATURES="distlocks parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
-------------------------------------------------------------------------------
[[ (2/3) Updating portage ]]
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] sys-apps/portage-2.1.5_rc6
-------------------------------------------------------------------------------
[[ (3/3) Emerging packages ]]
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] sys-devel/gettext-0.17
[ebuild R ] sys-libs/zlib-1.2.3-r1
[ebuild N ] app-arch/lzma-utils-4.32.5
[ebuild U ] sys-kernel/linux-headers-2.6.25-r1 [2.6.23-r3]
[ebuild R ] sys-devel/binutils-2.18-r1 USE="nls*"
[ebuild U ] sys-apps/texinfo-4.11-r1 [4.8-r5] USE="nls*"
[ebuild NS ] sys-devel/gcc-4.2.3 [4.1.2] USE="bootstrap nls (-altivec) -build -doc -fortran -gcj -gtk (-hardened) -ip28 -ip32r10k -libffi -mudflap (-multilib) -multislot (-n32) (-n64) -nocxx -objc -objc++ -objc-gc -openmp -test -vanilla"
[ebuild U ] sys-libs/glibc-2.7-r2 [2.6.1] USE="nls* -glibc-compat20%"
[ebuild N ] sys-apps/module-init-tools-3.4-r1 USE="-old-linux"
[ebuild U ] sys-apps/baselayout-2.0.0 [1.12.11.1] USE="-build*"
[ebuild N ] sys-apps/openrc-0.2.2 USE="-debug -ncurses -pam -unicode"
------------------------------------------------------------------------------- |
You are right, lzma wasn't needed before.. But now it is for some reason.. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54098 Location: 56N 3W
|
Posted: Wed Apr 23, 2008 9:53 pm Post subject: |
|
|
Simba7,
That build order is broken. you need sys-devel/gcc to build in the bootstrap before you have a C++ compiler.
Cheat - Do
You can save time by starting with the i686 stage 3, since you have a build host that will run it, changing the CHOST to i486, follow the CHOST change guide to get a i486 toolchain then rebuild everything to suit a i486 with _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
warrens Apprentice
Joined: 04 Jan 2005 Posts: 239 Location: Don't Tread On Me!
|
Posted: Thu Apr 24, 2008 4:52 am Post subject: |
|
|
NeddySeagoon wrote: | Cheat - Do |
He would need to do Code: | USE="-fortran" emerge -1 gcc | As fortran requires gmp and mpfr to be present before that part of gcc can be built. Starting with gcc-4.3.0 gmp and mpfr is a requirement for ALL languages. _________________ The BIGGER the GOVERNMENT, the smaller the citizen.
DON'T TREAD ON ME!!!
My Bias #1
The best government is the government that governs least. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Thu Apr 24, 2008 2:26 pm Post subject: |
|
|
warrens wrote: | As fortran requires gmp and mpfr to be present before that part of gcc can be built. Starting with gcc-4.3.0 gmp and mpfr is a requirement for ALL languages. |
It seems 4.2.3 needs it, too.. Unless you USE="-fortran".
So.. Before you run ./bootstrap.sh, Do this:
Code: | emerge glibc && USE="-fortran" emerge =sys-devel/gcc-4.2.3 |
That way it updates glibc first, then compiles gcc. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Thu Apr 24, 2008 9:27 pm Post subject: |
|
|
Well, Crap.. I can't go from 4.1.2 (what's already in Stage1) to 4.2.3 without doing an error I posted (https://forums.gentoo.org/viewtopic-t-670988-highlight-gcc.html) when gcc makes install.
I'm going to compile 4.1.2 then 4.2.3 (or directly to 4.3.0) and see if this cures the problem. Wish they wouldn't have deleted 4.2.2 so darn soon. That worked fine.
EDIT: 4.1.2 just finished compiling.. I'm now compiling 4.3.0 and will post if it succeeds. |
|
Back to top |
|
|
kernelOfTruth Watchman
Joined: 20 Dec 2005 Posts: 6111 Location: Vienna, Austria; Germany; hello world :)
|
|
Back to top |
|
|
tarpman Veteran
Joined: 04 Nov 2004 Posts: 1083 Location: Victoria, BC, Canada
|
Posted: Thu Apr 24, 2008 10:50 pm Post subject: |
|
|
Starting with 2.6.25 the kernel headers are distributed in an lzma archive, which is what's pulling in lzma-utils. To work around that, mask >=sys-kernel/linux-headers-2.6.25. _________________ Saving the world, one kilobyte at a time. |
|
Back to top |
|
|
Simba7 l33t
Joined: 22 Jan 2007 Posts: 706 Location: Billings, MT, USA
|
Posted: Fri Apr 25, 2008 2:04 am Post subject: |
|
|
I'm good, tarpman..
It worked! You have to compile gcc 4.1.2 first, then you can compile a later version (mine was 4.3.0). Make sure you compile glibc before gcc, though. Not sure why, maybe something got updated, I dunno.
So.. This should work (you can add sys-devel/gcc to portage.keywords if you want to get 4.3.0):
Code: | cp -L /etc/resolv.conf /mnt/gentoo/etc/
mount -t proc none /mnt/gentoo/proc
mount -o bind /dev /mnt/gentoo/dev
chroot /mnt/gentoo /bin/bash
env-update
source /etc/profile
export PS1="(chroot) $PS1"
emerge glibc
USE="-fortran" emerge =sys-devel/gcc-4.1.2
cd /usr/portage/scripts
./bootstrap.sh
emerge --oneshot --nodeps python
emerge --unmerge =dev-lang/python-2.4.4-r6
emerge -e system |
The last line should uninstall python-2.4.4 since it's an older version.
EDIT: It seems that kbd has a little trouble because mktemp isn't there (coreutils isn't compiled.. yet..). You can do a --skipfirst and compile it after system is done. |
|
Back to top |
|
|
ProtectionFault Apprentice
Joined: 14 Nov 2003 Posts: 170 Location: /dev/zero
|
Posted: Fri Sep 19, 2008 1:17 pm Post subject: |
|
|
Had the same problem here with dev-libs/gmp
Simply adding nocxx to the USE for stage3 in the scripts/bootstrap.sh script solved it. _________________ ASUS Z87-PLUS, i7-4770, 2x8GB DDR3-1600, 700W OCZ Power Supply, EVGA GTX760 4GB, 3TB HDD, Gentoo ~amd64 (3.10.10, dm-crypt full disk, awesome) |
|
Back to top |
|
|
|