Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
configure: error: C++ compiler not available
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Wed Apr 23, 2008 4:14 pm    Post subject: configure: error: C++ compiler not available Reply with quote

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
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54098
Location: 56N 3W

PostPosted: Wed Apr 23, 2008 5:53 pm    Post subject: Reply with quote

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
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Wed Apr 23, 2008 5:59 pm    Post subject: Reply with quote

I'm finding out g++ isn't in Stage1, but is on Stage 2 & 3.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54098
Location: 56N 3W

PostPosted: Wed Apr 23, 2008 6:07 pm    Post subject: Reply with quote

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
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Wed Apr 23, 2008 6:08 pm    Post subject: Reply with quote

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
View user's profile Send private message
MostAwesomeDude
Guru
Guru


Joined: 12 Aug 2007
Posts: 373

PostPosted: Wed Apr 23, 2008 6:15 pm    Post subject: Reply with quote

*ahem*

So don't do that!

That is all.
_________________
Don't believe the "n00b" under my name.
Back to top
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Wed Apr 23, 2008 6:18 pm    Post subject: Reply with quote

MostAwesomeDude wrote:
*ahem*

So don't do that!

That is all.

That doesn't help.. It's also breaking something for another user, also.. https://forums.gentoo.org/viewtopic-t-680609.html
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54098
Location: 56N 3W

PostPosted: Wed Apr 23, 2008 6:42 pm    Post subject: Reply with quote

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
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Wed Apr 23, 2008 7:19 pm    Post subject: Reply with quote

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
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54098
Location: 56N 3W

PostPosted: Wed Apr 23, 2008 9:03 pm    Post subject: Reply with quote

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
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Wed Apr 23, 2008 9:39 pm    Post subject: Reply with quote

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
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54098
Location: 56N 3W

PostPosted: Wed Apr 23, 2008 9:53 pm    Post subject: Reply with quote

Simba7,

That build order is broken. you need sys-devel/gcc to build in the bootstrap before you have a C++ compiler.

Cheat - Do
Code:
emerge gcc -1


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
Code:
emerge -e world

_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
warrens
Apprentice
Apprentice


Joined: 04 Jan 2005
Posts: 239
Location: Don't Tread On Me!

PostPosted: Thu Apr 24, 2008 4:52 am    Post subject: Reply with quote

NeddySeagoon wrote:
Cheat - Do
Code:
emerge gcc -1

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
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Thu Apr 24, 2008 2:26 pm    Post subject: Reply with quote

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
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Thu Apr 24, 2008 9:27 pm    Post subject: Reply with quote

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
View user's profile Send private message
kernelOfTruth
Watchman
Watchman


Joined: 20 Dec 2005
Posts: 6111
Location: Vienna, Austria; Germany; hello world :)

PostPosted: Thu Apr 24, 2008 9:45 pm    Post subject: Reply with quote

Simba7 wrote:
Wish they wouldn't have deleted 4.2.2 so darn soon. That worked fine.


if you need the ebuild for 4.2.2 just say - I'll then upload my overlay (which includes it)
_________________
https://github.com/kernelOfTruth/ZFS-for-SystemRescueCD/tree/ZFS-for-SysRescCD-4.9.0
https://github.com/kernelOfTruth/pulseaudio-equalizer-ladspa

Hardcore Gentoo Linux user since 2004 :D
Back to top
View user's profile Send private message
tarpman
Veteran
Veteran


Joined: 04 Nov 2004
Posts: 1083
Location: Victoria, BC, Canada

PostPosted: Thu Apr 24, 2008 10:50 pm    Post subject: Reply with quote

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
View user's profile Send private message
Simba7
l33t
l33t


Joined: 22 Jan 2007
Posts: 706
Location: Billings, MT, USA

PostPosted: Fri Apr 25, 2008 2:04 am    Post subject: Reply with quote

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
View user's profile Send private message
ProtectionFault
Apprentice
Apprentice


Joined: 14 Nov 2003
Posts: 170
Location: /dev/zero

PostPosted: Fri Sep 19, 2008 1:17 pm    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum