Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 78449 - Gcc 3.4.3.20050110 does not appear to recognize prototypes
Summary: Gcc 3.4.3.20050110 does not appear to recognize prototypes
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: x86 Linux
: High blocker (vote)
Assignee: Gentoo Toolchain Maintainers
URL: http://forums.gentoo.org/viewtopic.ph...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-01-17 17:12 UTC by Bob
Modified: 2005-01-20 15:05 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Bob 2005-01-17 17:12:31 UTC
I have been running a Gcc-3.4.3-r1 system whose toolkit was built using three compilations and a pair of emerge -e systems, (aka robmoss method).  today i performed an emerge -uD system and caught the 20050110 ebuild of gcc 3.4.3.  the update went fine, except for errors being issued on the compile of sys-libs/ncurses-5.4-r5.  the output looks like this:

Configuring NCURSES 5.4 ABI 5 (Mon Jan 17 18:48:59 CST 2005) 
 checking build system type... i686-pc-linux-gnu 
 checking host system type... i686-pc-linux-gnu 
 checking target system type... i686-pc-linux-gnu 
 Configuring for linux-gnu 
 checking for prefix... /usr 
 checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc 
 checking for C compiler default output... 
 checking whether the C compiler works... yes 
 checking whether we are cross compiling... yes 
 checking for executable suffix... 
 checking for object suffix... 
 checking whether we are using the GNU C compiler... no 
 checking whether i686-pc-linux-gnu-gcc accepts -g... no 
 checking how to run the C preprocessor... i686-pc-linux-gnu-gcc -E 
 checking for POSIXized ISC... no 
 checking for i686-pc-linux-gnu-gcc option to accept ANSI C... no 
 configure: error: Your compiler does not appear to recognize prototypes. 
 You have the following choices: 
         a. adjust your compiler options 
         b. get an up-to-date compiler 
         c. use a wrapper such as unproto 
 
 !!! Please attach the config.log to your bug report: 
 !!! /var/tmp/portage/ncurses-5.4-r5/work/ncurses-5.4/config.log 
 
 !!! ERROR: sys-libs/ncurses-5.4-r5 failed. 
 !!! Function econf, Line 483, Exitcode 0 
 !!! econf failed 
 !!! If you need support, post the topmost build error, NOT this status message. 

in addition, a number of system functions were immediatley borked, including etc-update, nano, and ls.  the ls command gives the following output:

so i tried recompiling gcc-3.4.3.20050110-built-with-3.3.4-r1 to have 3.4.3.2005-built-with-2005.0110: 

so i tried recompiling gcc-3.4.3.20050110-built-with-3.3.4-r1 to have 3.4.3.2005-built-with-2005.0110: 

 * Applying various patches (bugfixes/updates) ... 
  *   00_all_gcc-3.4.3-v8.7.6.7-incompat-default.patch.bz2 ...              [ ok ] 
  *   01_all_gcc-3.4.3-v8.7.7-pie-generic-default.patch.bz2 ...             [ ok ] 
  *   02_all_gcc-3.4.3-v8.7.6.7-pie-alpha-default.patch.bz2 ...             [ ok ] 
  *   02_all_gcc-3.4.3-v8.7.6.7-pie-arm-default.patch.bz2 ...               [ ok ] 
  *   02_all_gcc-3.4.3-v8.7.6.7-pie-ia64-default.patch.bz2 ...              [ ok ] 
  *   02_all_gcc-3.4.3-v8.7.6.7-pie-rs6000-default.patch.bz2 ...            [ ok ] 
  *   02_all_gcc-3.4.3-v8.7.6.7-pie-sparc-default.patch.bz2 ...             [ ok ] 
  * Done with patching 
  * patching gcc version: 20050110 (Gentoo Linux 3.4.3.20050110, ssp-3.4.3.20050110-0, pie-8.7.7) 
  * Patching ${S}/ltmain.sh ... 
 
  * Portage patch requested, but failed to apply! 
 
 !!! ERROR: sys-devel/gcc-3.4.3.20050110 failed. 
 !!! Function elibtoolize, Line 231, Exitcode 0 
 !!! Portage patch requested, but failed to apply! 
 !!! If you need support, post the topmost build error, NOT this status message. 

Reproducible: Always
Steps to Reproduce:
1.  emerge gcc 3.4.3.20050110
2.  try to emerge anything else
3.

Actual Results:  
critical stops when compiling programs, or error messages related to fialure to cache service 
dependencies 

Expected Results:  
clean compilation 

gentoo ~ # emerge info 
Portage 2.0.51-r13 (default-linux/x86/2004.3, gcc-3.4.3, glibc-2.3.4.20041102-r0, 
2.6.10-gentoo-r1 i686) 
================================================================= 
System uname: 2.6.10-gentoo-r1 i686 Pentium III (Coppermine) 
Gentoo Base System version 1.6.8 
Python:              dev-lang/python-2.3.4 [2.3.4 (#1, Dec 29 2004, 22:58:57)] 
dev-lang/python:     2.3.4 
sys-devel/autoconf:  2.59-r6, 2.13 
sys-devel/automake:  1.8.5-r2, 1.5, 1.4_p6, 1.6.3, 1.7.9, 1.9.4 
sys-devel/binutils:  2.15.92.0.2-r2 
sys-devel/libtool:   1.5.10-r2 
virtual/os-headers:  2.6.8.1-r2 
ACCEPT_KEYWORDS="x86 ~x86" 
AUTOCLEAN="yes" 
CFLAGS=" -O2 -march=pentium3 -pipe" 
CHOST="i686-pc-linux-gnu" 
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" 
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" 
CXXFLAGS=" -O2 -march=pentium3 -pipe" 
DISTDIR="/usr/portage/distfiles" 
FEATURES="autoaddcvs autoconfig candy ccache distlocks sandbox sfperms" 
GENTOO_MIRRORS="http://gentoo.netnitco.net http://gentoo.osuosl.org 
http://www.ibiblio.org/pub/Linux/distributions/gentoo" 
MAKEOPTS="-j2" 
PKGDIR="/usr/portage/packages" 
PORTAGE_TMPDIR="/var/tmp" 
PORTDIR="/usr/portage" 
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" 
USE="X acpi alsa apm arts avi berkdb bitmap-fonts cdinstall cdparanoia cdr cdromcgi chroot client 
crypt cups dvd dvdr dvdread encode esd f77 fam flac font-server foomaticdb fortran freetype gdbm 
gif gimp gimpprint gnome gnomedb gnuplot gpm gtk gtk2 gtkhtml hal ide imagemagick imlib ipv6 
ithreads java javacomm javadoc javamail javascript jpeg jpeg2k kde ldap libg++ libwww mad 
mikmod motif mpeg mysql ncurses nls nptl oggvorbis opengl oss pam pdf pdflib perl png posix print 
pthreadspython qt quicktime readline samba sdl shaper slang snmp spell ssl svga tcpd tiff truetype 
truetype-fonts type1-fonts userlocales x86 xine xinerama xml xml2 xmmsxscreensaver xv zlib" 
Unset:  LDFLAGS, PORTDIR_OVERLAY
Comment 1 Bob 2005-01-17 17:17:57 UTC
this log was created with the machine configured for optimization -O3:

gentoo ~ # cat /var/tmp/portage/ncurses-5.4-r5/work/ncurses-5.4/config.log

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by configure, which was
generated by GNU Autoconf 2.52.20030208.  Invocation command line was

  $ ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/lib --with-terminfo-dirs=/etc/terminfo:/usr/share/terminfo --disable-termcap --with-shared --with-rcs-ids --without-ada --enable-symlinks --program-prefix= --without-debug

## ---------- ##
## Platform.  ##
## ---------- ##

hostname = gentoo
uname -m = i686
uname -r = 2.6.10-gentoo-r1
uname -s = Linux
uname -v = #2 Sat Jan 8 10:30:52 CST 2005

/usr/bin/uname -p = Pentium III (Coppermine)
/bin/uname -X     = unknown

/bin/arch              = i686
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
hostinfo               = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH = /sbin:/usr/sbin:/usr/lib/portage/bin:/bin:/usr/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/3.4.3:/usr/i386-pc-linux-gnu/gcc-bin/3.3:/usr/X11R6/bin:/opt/blackdown-jdk-1.4.2.01/bin:/opt/blackdown-jdk-1.4.2.01/jre/bin:/usr/qt/3/bin:/usr/kde/3.3/sbin:/usr/kde/3.3/bin

## ------------ ##
## Core tests.  ##
## ------------ ##

configure:1029: PATH=".;."; conftest.sh
./configure: line 1030: conftest.sh: command not found
configure:1032: $? = 127
configure:1049: result: Configuring NCURSES 5.4 ABI 5 (Mon Jan 17 18:48:59 CST 2005)
configure:1154: checking build system type
configure:1172: result: i686-pc-linux-gnu
configure:1179: checking host system type
configure:1193: result: i686-pc-linux-gnu
configure:1201: checking target system type
configure:1215: result: i686-pc-linux-gnu
configure:1246: result: Configuring for linux-gnu
configure:1270: checking for prefix
configure:1282: result: /usr
configure:1322: checking for i686-pc-linux-gnu-gcc
configure:1337: found /usr/bin/i686-pc-linux-gnu-gcc
configure:1345: result: i686-pc-linux-gnu-gcc
configure:1608: checking for C compiler version
configure:1611: i686-pc-linux-gnu-gcc --version </dev/null >&5
i686-pc-linux-gnu-gcc (GCC) 3.4.3 20050110 (Gentoo Linux 3.4.3.20050110, ssp-3.4.3.20050110-0, pie-8.7.7)
Copyright (C) 2004 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:1614: $? = 0
configure:1616: i686-pc-linux-gnu-gcc -v </dev/null >&5
Reading specs from /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/specs
Configured with: /var/tmp/portage/gcc-3.4.3.20050110/work/gcc-3.4.3/configure --enable-version-specific-runtime-libs --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/3.4.3 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.3 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.3/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/3.4.3/info--with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/3.4.3/include/g++-v3 --host=i686-pc-linux-gnu --disable-altivec --enable-nls --without-included-gettext --enable-__cxa_atexit --enable-clocale=gnu --with-system-zlib --disable-checking --disable-werror --disable-libunwind-exceptions --enable-shared --enable-threads=posix --disable-libgcj --enable-languages=c,c++,f77
Thread model: posix
gcc version 3.4.3 20050110 (Gentoo Linux 3.4.3.20050110, ssp-3.4.3.20050110-0, pie-8.7.7)
configure:1619: $? = 0
configure:1621: i686-pc-linux-gnu-gcc -V </dev/null >&5
i686-pc-linux-gnu-gcc: `-V' option must have argument
configure:1624: $? = 1
configure:1644: checking for C compiler default output
configure:1647: i686-pc-linux-gnu-gcc -O3 -march=pentium3 -pipe -fPIC   conftest.c  >&5
configure:1650: $? = 0
configure:1679: result:
configure:1684: checking whether the C compiler works
configure:1690: ./
./configure: line 1691: ./: is a directory
configure:1693: $? = 126
configure:1708: result: yes
configure:1715: checking whether we are cross compiling
configure:1717: result: yes
configure:1720: checking for executable suffix
configure:1722: i686-pc-linux-gnu-gcc -o conftest -O3 -march=pentium3 -pipe -fPIC   conftest.c  >&5
configure:1725: $? = 0
configure:1747: result:
configure:1753: checking for object suffix
configure:1771: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  conftest.c >&5
configure:1774: $? = 0
configure:1793: result:
configure:1797: checking whether we are using the GNU C compiler
configure:1818: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  conftest.c >&5
configure:1821: $? = 0
configure:1824: test -s conftest.
configure:1827: $? = 1
configure: failed program was:
#line 1803 "configure"
#include "confdefs.h"

int
main ()
{
#ifndef __GNUC__
       choke me
#endif

  ;
  return 0;
}
configure:1839: result: no
configure:1845: checking whether i686-pc-linux-gnu-gcc accepts -g
configure:1863: i686-pc-linux-gnu-gcc -c -g  conftest.c >&5
configure:1866: $? = 0
configure:1869: test -s conftest.
configure:1872: $? = 1
configure: failed program was:
#line 1851 "configure"
#include "confdefs.h"

int
main ()
{

  ;
  return 0;
}
configure:1882: result: no
configure:1909: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  conftest.c >&5
conftest.c:2: error: parse error before "me"
configure:1912: $? = 1
configure: failed program was:
#ifndef __cplusplus
  choke me
#endif
configure:2025: checking how to run the C preprocessor
configure:2051: i686-pc-linux-gnu-gcc -E  conftest.c
configure:2057: $? = 0
configure:2084: i686-pc-linux-gnu-gcc -E  conftest.c
configure:2081:28: ac_nonexistent.h: No such file or directory
configure:2090: $? = 1
configure: failed program was:
#line 2080 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
configure:2127: result: i686-pc-linux-gnu-gcc -E
configure:2142: i686-pc-linux-gnu-gcc -E  conftest.c
configure:2148: $? = 0
configure:2175: i686-pc-linux-gnu-gcc -E  conftest.c
configure:2172:28: ac_nonexistent.h: No such file or directory
configure:2181: $? = 1
configure: failed program was:
#line 2171 "configure"
#include "confdefs.h"
#include <ac_nonexistent.h>
configure:2263: checking for POSIXized ISC
configure:2282: result: no
configure:2287: checking for i686-pc-linux-gnu-gcc option to accept ANSI C
configure:2364: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  -DCC_HAS_PROTOS  conftest.c >&5
configure:2367: $? = 0
configure:2370: test -s conftest.
configure:2373: $? = 1
configure: failed program was:
#line 2343 "configure"
#include "confdefs.h"

#ifndef CC_HAS_PROTOS
#if !defined(__STDC__) || (__STDC__ != 1)
choke me
#endif
#endif

int
main ()
{

        int test (int i, double x);
        struct s1 {int (*f) (int a);};
        struct s2 {int (*f) (double a);};
  ;
  return 0;
}
configure:2364: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  -DCC_HAS_PROTOS  conftest.c >&5
configure:2367: $? = 0
configure:2370: test -s conftest.
configure:2373: $? = 1
configure: failed program was:
#line 2343 "configure"
#include "confdefs.h"

#ifndef CC_HAS_PROTOS
#if !defined(__STDC__) || (__STDC__ != 1)
choke me
#endif
#endif

int
main ()
{

        int test (int i, double x);
        struct s1 {int (*f) (int a);};
        struct s2 {int (*f) (double a);};
  ;
  return 0;
}
configure:2364: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  -qlanglvl=ansi  -DCC_HAS_PROTOS  conftest.c >&5
i686-pc-linux-gnu-gcc: unrecognized option `-qlanglvl=ansi'
configure:2367: $? = 0
configure:2370: test -s conftest.
configure:2373: $? = 1
configure: failed program was:
#line 2343 "configure"
#include "confdefs.h"

#ifndef CC_HAS_PROTOS
#if !defined(__STDC__) || (__STDC__ != 1)
choke me
#endif
#endif

int
main ()
{

        int test (int i, double x);
        struct s1 {int (*f) (int a);};
        struct s2 {int (*f) (double a);};
  ;
  return 0;
}
configure:2364: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  -qlanglvl=ansi  -std1  -DCC_HAS_PROTOS  conftest.c >&5
i686-pc-linux-gnu-gcc: unrecognized option `-qlanglvl=ansi'
cc1: error: unrecognized command line option "-std1"
configure:2367: $? = 1
configure: failed program was:
#line 2343 "configure"
#include "confdefs.h"

#ifndef CC_HAS_PROTOS
#if !defined(__STDC__) || (__STDC__ != 1)
choke me
#endif
#endif

int
main ()
{

        int test (int i, double x);
        struct s1 {int (*f) (int a);};
        struct s2 {int (*f) (double a);};
  ;
  return 0;
}
configure:2364: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  -qlanglvl=ansi  -std1  -Ae  -DCC_HAS_PROTOS  conftest.c >&5
i686-pc-linux-gnu-gcc: unrecognized option `-qlanglvl=ansi'
cc1: error: unrecognized command line option "-std1"
configure:2367: $? = 1
configure: failed program was:
#line 2343 "configure"
#include "confdefs.h"

#ifndef CC_HAS_PROTOS
#if !defined(__STDC__) || (__STDC__ != 1)
choke me
#endif
#endif

int
main ()
{

        int test (int i, double x);
        struct s1 {int (*f) (int a);};
        struct s2 {int (*f) (double a);};
  ;
  return 0;
}
configure:2364: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  -qlanglvl=ansi  -std1  -Ae  -Aa  -D_HPUX_SOURCE  -DCC_HAS_PROTOS  conftest.c >&5
i686-pc-linux-gnu-gcc: unrecognized option `-qlanglvl=ansi'
cc1: error: unrecognized command line option "-std1"
configure:2367: $? = 1
configure: failed program was:
#line 2343 "configure"
#include "confdefs.h"

#ifndef CC_HAS_PROTOS
#if !defined(__STDC__) || (__STDC__ != 1)
choke me
#endif
#endif

int
main ()
{

        int test (int i, double x);
        struct s1 {int (*f) (int a);};
        struct s2 {int (*f) (double a);};
  ;
  return 0;
}
configure:2364: i686-pc-linux-gnu-gcc -c -O3 -march=pentium3 -pipe -fPIC  -qlanglvl=ansi  -std1  -Ae  -Aa  -Xc  -D_HPUX_SOURCE  -DCC_HAS_PROTOS  conftest.c >&5
i686-pc-linux-gnu-gcc: unrecognized option `-qlanglvl=ansi'
i686-pc-linux-gnu-gcc: unrecognized option `-Xc'
cc1: error: unrecognized command line option "-std1"
configure:2367: $? = 1
configure: failed program was:
#line 2343 "configure"
#include "confdefs.h"

#ifndef CC_HAS_PROTOS
#if !defined(__STDC__) || (__STDC__ != 1)
choke me
#endif
#endif

int
main ()
{

        int test (int i, double x);
        struct s1 {int (*f) (int a);};
        struct s2 {int (*f) (double a);};
  ;
  return 0;
}
configure:2386: result: no
configure:2431: error: Your compiler does not appear to recognize prototypes.
You have the following choices:
        a. adjust your compiler options
        b. get an up-to-date compiler
        c. use a wrapper such as unproto

## ----------------- ##
## Cache variables.  ##
## ----------------- ##

ac_cv_build=i686-pc-linux-gnu
ac_cv_build_alias=i686-pc-linux-gnu
ac_cv_c_compiler_gnu=no
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-O3 -march=pentium3 -pipe -fPIC'
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=set
ac_cv_env_CXXFLAGS_value='-O3 -march=pentium3 -pipe -fPIC'
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_LDFLAGS_set=set
ac_cv_env_LDFLAGS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=i686-pc-linux-gnu
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_host=i686-pc-linux-gnu
ac_cv_host_alias=i686-pc-linux-gnu
ac_cv_prog_CC=i686-pc-linux-gnu-gcc
ac_cv_prog_CPP='i686-pc-linux-gnu-gcc -E'
ac_cv_prog_cc_g=no
ac_cv_target=i686-pc-linux-gnu
ac_cv_target_alias=i686-pc-linux-gnu
cf_cv_abi_version=5
cf_cv_ansi_cc=no
cf_cv_rel_version=5.4
cf_cv_system_name=linux-gnu
cf_cv_timestamp='Mon Jan 17 18:48:59 CST 2005'

## ------------ ##
## confdefs.h.  ##
## ------------ ##

#define SYSTEM_NAME "linux-gnu"


configure: exit 1
gentoo ~ #                                     
Comment 2 Jeremy Huddleston (RETIRED) gentoo-dev 2005-01-20 02:12:37 UTC
Can you pleasse verify that going down to 3.4.3-r1 fixes the problem for you?  I just bootstrapped -> emerge system/gnome/kde an entire amd64 2005.0 system using this compiler, and I didn't hit any problem like this.
Comment 3 Bob 2005-01-20 15:05:51 UTC
it seems that i may have been caught by the "ncurses deathgrip":  total system clusterb0rkage as a result of recompiling ncurses without having the USE="unicode" flag set:

http://forums.gentoo.org/viewtopic.php?t=274175&highlight=ncurses+deathgrip

i was able to solve the problem by doing the following:

ln -sf /lib/libncurses.so.5 /lib/libnursesw.so.5
revdep-rebuild --soname libnursesw.so5
rm /lib/libncursesw.so.5