Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 60054 - gcc-config fails to switch between 3.3.2 and 3.3.3
Summary: gcc-config fails to switch between 3.3.2 and 3.3.3
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: x86 Linux
: High major (vote)
Assignee: Martin Schlemmer (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-11 07:13 UTC by Esa Nuuros
Modified: 2004-10-13 08:25 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 Esa Nuuros 2004-08-11 07:13:37 UTC
gcc-config fails to switch between gcc 3.3.2 and gcc 3.3.3. No matter which profile I select I always get the 3.3.2 gcc.

Reproducible: Always
Steps to Reproduce:
1. gcc-config i686-pc-linux-gnu-3.3.3
2. env-update && source /etc/profile
3. gcc --version

Actual Results:  
1. * Switching to i686-pc-linux-gnu-3.3.3 compiler...                [ok]
2. * Caching service dependencies...
3. gcc (GCC) 3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)


Expected Results:  
Step 3. gcc --version should report version 3.3.3

nurtsi 3.3 # gcc-config -l
[1] i686-pc-linux-gnu-3.3.2
[2] i686-pc-linux-gnu-3.3.3

nurtsi 3.3 # gcc-config  i686-pc-linux-gnu-3.3.3
 * Switching to i686-pc-linux-gnu-3.3.3 compiler...        [ ok ]

nurtsi 3.3 # env-update && source /etc/profile
 * Caching service dependencies...

nurtsi 3.3 # gcc-config -c
i686-pc-linux-gnu-3.3.3

nurtsi 3.3 # gcc-config -B
/usr/i686-pc-linux-gnu/gcc-bin/3.3

nurtsi 3.3 # gcc --version
gcc (GCC) 3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)
Copyright (C) 2003 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.

nurtsi 3.3 # cd /usr/i686-pc-linux-gnu/gcc-bin/3.3/

nurtsi 3.3 # ls -l i686-pc-linux-gnu-gcc*
lrwxrwxrwx  1 root root 3 Aug 10 13:13 i686-pc-linux-gnu-gcc -> gcc
lrwxrwxrwx  1 root root 3 Aug 10 13:13 i686-pc-linux-gnu-gcc-3.3.2 -> gcc
lrwxrwxrwx  1 root root 3 Jul  6 23:50 i686-pc-linux-gnu-gcc-3.3.3 -> gcc

nurtsi 3.3 # ls -l gcc
-rwxr-xr-x  1 root root 86620 Aug 10 13:13 gcc

nurtsi 3.3 # ./gcc --version
gcc (GCC) 3.3.2 20031218 (Gentoo Linux 3.3.2-r5, propolice-3.3-7)
Copyright (C) 2003 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.

Should the links point to different binary files?
Comment 1 Seemant Kulleen (RETIRED) gentoo-dev 2004-08-11 10:15:03 UTC
I don't think it's designed to switch between minor versions like that.
Comment 2 solar (RETIRED) gentoo-dev 2004-08-11 12:40:42 UTC
I think azarah is the exclusive maintainer of gcc-config reassinging bug to him.
Comment 3 Marco Papa Manzillo 2004-09-17 10:32:58 UTC
i was installing gentoo 2004.2 stage1 and bootstrap use gcc 3.3.3 but fails to compile!
The last lines are:

else true; fi
/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/xgcc -B/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/ -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ -isystem 
/usr/i686-pc-linux-gnu/include -c -DHAVE_CONFIG_H -O2 -march=pentium4 -pipe -O2 -I. -I/var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/../include  -W -Wall 
-Wtraditional -pedantic /var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/xstrdup.c -o xstrdup.o
if [ x"-fpic" != x ]; then \
  /var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/xgcc -B/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/ -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ 
-isystem /usr/i686-pc-linux-gnu/include -c -DHAVE_CONFIG_H -O2 -march=pentium4 -pipe -O2 -I. -I/var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/../include  -W 
-Wall -Wtraditional -pedantic -fpic /var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/xstrerror.c -o pic/xstrerror.o; \
else true; fi
/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/xgcc -B/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/ -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ -isystem 
/usr/i686-pc-linux-gnu/include -c -DHAVE_CONFIG_H -O2 -march=pentium4 -pipe -O2 -I. -I/var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/../include  -W -Wall 
-Wtraditional -pedantic /var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/xstrerror.c -o xstrerror.o
if [ x"-fpic" != x ]; then \
  /var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/xgcc -B/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/ -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ 
-isystem /usr/i686-pc-linux-gnu/include -c -DHAVE_CONFIG_H -O2 -march=pentium4 -pipe -O2 -I. -I/var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/../include  -W 
-Wall -Wtraditional -pedantic -fpic /var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/mkstemps.c -o pic/mkstemps.o; \
else true; fi
/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/xgcc -B/var/tmp/portage/gcc-3.3.3-r6/work/build/gcc/ -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ -isystem 
/usr/i686-pc-linux-gnu/include -c -DHAVE_CONFIG_H -O2 -march=pentium4 -pipe -O2 -I. -I/var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/../include  -W -Wall 
-Wtraditional -pedantic /var/tmp/portage/gcc-3.3.3-r6/work/gcc-3.3.3/libiberty/mkstemps.c -o mkstemps.o
rm -f libiberty.a pic/libiberty.a
ar rc libiberty.a \
  regex.o cplus-dem.o cp-demangle.o md5.o alloca.o argv.o choose-temp.o concat.o dyn-string.o fdmatch.o fibheap.o floatformat.o fnmatch.o getopt.o getopt1.o getpwd.o 
getruntime.o hashtab.o hex.o lbasename.o lrealpath.o make-relative-prefix.o make-temp-file.o objalloc.o obstack.o partition.o physmem.o pexecute.o safe-ctype.o sort.o 
spaces.o splay-tree.o strerror.o strsignal.o ternary.o xatexit.o xexit.o xmalloc.o xmemdup.o xstrdup.o xstrerror.o  mkstemps.o
ranlib libiberty.a
if [ x"-fpic" != x ]; then \
  cd pic; \
  ar rc libiberty.a \
    regex.o cplus-dem.o cp-demangle.o md5.o alloca.o argv.o choose-temp.o concat.o dyn-string.o fdmatch.o fibheap.o floatformat.o fnmatch.o getopt.o getopt1.o getpwd.o 
getruntime.o hashtab.o hex.o lbasename.o lrealpath.o make-relative-prefix.o make-temp-file.o objalloc.o obstack.o partition.o physmem.o pexecute.o safe-ctype.o sort.o 
spaces.o splay-tree.o strerror.o strsignal.o ternary.o xatexit.o xexit.o xmalloc.o xmemdup.o xstrdup.o xstrerror.o  mkstemps.o; \
  ranlib libiberty.a; \
  cd ..; \
else true; fi
rm -f needed-list; touch needed-list; \
for f in atexit calloc memchr memcmp memcpy memmove memset rename strchr strerror strncmp strrchr strstr strtol strtoul tmpnam vfprintf vprintf vfork waitpid bcmp 
bcopy bzero; do \
  for g in mkstemps.o ; do \
    case "$g" in \
      *$f*) echo $g >> needed-list ;; \
    esac; \
  done; \
done
echo regex.o cplus-dem.o cp-demangle.o md5.o alloca.o argv.o choose-temp.o concat.o dyn-string.o fdmatch.o fibheap.o floatformat.o fnmatch.o getopt.o getopt1.o 
getpwd.o getruntime.o hashtab.o hex.o lbasename.o lrealpath.o make-relative-prefix.o make-temp-file.o objalloc.o obstack.o partition.o physmem.o pexecute.o 
safe-ctype.o sort.o spaces.o splay-tree.o strerror.o strsignal.o ternary.o xatexit.o xexit.o xmalloc.o xmemdup.o xstrdup.o xstrerror.o > required-list
make[3]: Entering directory `/var/tmp/portage/gcc-3.3.3-r6/work/build/i686-pc-linux-gnu/libiberty/testsuite'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/var/tmp/portage/gcc-3.3.3-r6/work/build/i686-pc-linux-gnu/libiberty/testsuite'
make[2]: Leaving directory `/var/tmp/portage/gcc-3.3.3-r6/work/build/i686-pc-linux-gnu/libiberty'
/bin/sh: -c: line 1: unexpected EOF while looking for matching `}'
/bin/sh: -c: line 2: syntax error: unexpected end of file
make[1]: *** [configure-target-libstdc++-v3] Error 2
make[1]: Leaving directory `/var/tmp/portage/gcc-3.3.3-r6/work/build'
make: *** [bootstrap-lean] Error 2

!!! ERROR: sys-devel/gcc-3.3.3-r6 failed.
!!! Function src_compile, Line 568, Exitcode 2
!!! (no error message)
Comment 4 SpanKY gentoo-dev 2004-10-13 08:25:41 UTC
gcc-3.3.3 and gcc-3.3.2 cannot be installed at the same time

looks like you merged 3.3.2 over 3.3.3 and that's why gcc always reports 3.3.2