Bug 145167 - stale ccache wrapper makes configure fail - error: C compiler cannot create executables
|
Bug#:
145167
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: lisa@gentoo.org
|
Reported By: matteo@fsfe.org
|
|
Component: Applications
|
|
|
URL:
|
|
Summary: stale ccache wrapper makes configure fail - error: C compiler cannot create executables
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2006-08-26 05:02 0000
|
>>> Emerging (1 of 2) sci-libs/netcdf-3.6.1 to /
* netcdf-3.6.1.tar.gz MD5 ;-) ...
[
ok ]
* netcdf-3.6.1.tar.gz RMD160 ;-) ...
[
ok ]
* netcdf-3.6.1.tar.gz SHA1 ;-) ...
[
ok ]
* netcdf-3.6.1.tar.gz SHA256 ;-) ...
[
ok ]
* netcdf-3.6.1.tar.gz size ;-) ...
[
ok ]
* checking ebuild checksums ;-) ...
[
ok ]
* checking auxfile checksums ;-) ...
[
ok ]
* checking miscfile checksums ;-) ...
[
ok ]
* checking netcdf-3.6.1.tar.gz ;-) ...
[
ok ]
* You need one of these Fortran Compilers: gfortran ifc g77
* Installed are: gfortran
>>> Unpacking source...
>>> Unpacking netcdf-3.6.1.tar.gz to /var/tmp/portage/netcdf-3.6.1/work
* Applying fPIC.patch ...
[
ok ]
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src ...
* econf: updating netcdf-3.6.1/src/config.sub with
/usr/share/gnuconfig/config.sub
* econf: updating netcdf-3.6.1/src/config.guess with
/usr/share/gnuconfig/config.guess
* disabling confcache, binary cannot be found
./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man
--infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc
--localstatedir=/var/lib CPPFLAGS=-DpgiFortran --libdir=/usr/lib64
--build=x86_64-pc-linux-gnu
configure: netCDF 3.6.1
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking whether configure should try to set compiler flags... no
checking whether netCDF is to be built in 64-bit mode... no
checking where to put large files... .
checking for top-level source-directory...
/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src
checking for x86_64-pc-linux-gnu-pathcc... no
checking for x86_64-pc-linux-gnu-xlc... no
checking for x86_64-pc-linux-gnu-icc... no
checking for x86_64-pc-linux-gnu-cc... x86_64-pc-linux-gnu-cc
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 filing a report to bugs.gentoo.org:
!!! /var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/config.log
!!! ERROR: sci-libs/netcdf-3.6.1 failed.
Call stack:
ebuild.sh, line 1543: Called dyn_compile
ebuild.sh, line 938: Called src_compile
netcdf-3.6.1.ebuild, line 43: Called econf 'CPPFLAGS=-DpgiFortran'
ebuild.sh, line 539: Called die
!!! econf failed
!!! If you need support, post the topmost build error, and the call stack if
relevant.
Remove the junk x86_64-pc-linux-gnu-cc ccache wrapper that just shouldn't be
there.
After unmerging ccache it's works if I use "USE=-fortran". With fortran USE
flag enabled I've got this error:
make[1]: Entering directory
`/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src'
Making `all' in directory
/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/fortran
make[2]: Entering directory
`/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/fortran'
x86_64-pc-linux-gnu-gcc -c -march=athlon64 -O3 -ftracer -pipe -msse3 -I..
-I../libsrc fort-attio.c
In file included from ncfortran.h:13,
from fort-attio.c:6:
cfortran.h:138:3: error: #error "cfortran.h: Can't find your environment
among: - MIPS cc and f77 2.0. (e.g. Silicon Graphics, DECstations, ...)
- IBM AIX XL C and FORTRAN Compiler/6000 Version 01.01.0000.0000 -
VAX VMS CC 3.1 and FORTRAN 5.4. - Alpha
VMS DEC C 1.3 and DEC FORTRAN 6.0. - Alpha OSF
DEC C and DEC Fortran for OSF/1 AXP Version 1.2 - Apollo DomainOS
10.2 (sys5.3) with f77 10.7 and cc 6.7. - CRAY
- NEC SX-4 SUPER-UX
- CONVEX
- Sun
- PowerStation Fortran with Visual C++
- HP9000s300/s700/s800 Latest test with: HP-UX A.08.07 A
9000/730 - LynxOS: cc or gcc with f2c.
- VAXUltrix: vcc,cc or gcc with f2c. gcc or cc with f77.
- f77 with vcc works; but missing link magic for f77 I/O. -
NO fort. None of gcc, cc or vcc generate required names. - f2c :
Use #define f2cFortran, or cc -Df2cFortran - NAG f90: Use
#define NAGf90Fortran, or cc -DNAGf90Fortran - Absoft UNIX F77:
Use #define AbsoftUNIXFortran or cc -DAbsoftUNIXFortran - Absoft Pro
Fortran: Use #define AbsoftProFortran - Portland Group Fortran: Use #define
pgiFortran - PathScale Fortran: Use #define PATHSCALE_COMPILER"
make[2]: *** [fort-attio.o] Error 1
make[2]: Leaving directory
`/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src/fortran'
make[1]: *** [subdir_target] Error 1
make[1]: Leaving directory
`/var/tmp/portage/netcdf-3.6.1/work/netcdf-3.6.1/src'
make: *** [fortran/all] Error 2
!!! ERROR: sci-libs/netcdf-3.6.1 failed.
Call stack:
ebuild.sh, line 1543: Called dyn_compile
ebuild.sh, line 938: Called src_compile
netcdf-3.6.1.ebuild, line 45: Called die
!!! make failed
!!! If you need support, post the topmost build error, and the call stack if
relevant.
I'm sorry, with USE="-fortran" I've got the error, with USE="fortran" it works.
(In reply to comment #4)
> After unmerging ccache it's works if I use "USE=-fortran". With fortran USE
> flag enabled I've got this error:
Unrelated, file a new bug.
+1 from me. This error scared me at first. Thought I broke my compiler. ;)
*** Bug 145946 has been marked as a duplicate of this bug. ***
*** Bug 147289 has been marked as a duplicate of this bug. ***
This should be fixed in 2.4-r3. Please test it.
(In reply to comment #11)
> This should be fixed in 2.4-r3. Please test it.
symlinks in /usr/lib/ccache/bin/* are now in pkg-db. but the old stale links cc
and i686-pc-linux-gnu-cc were not removed.
BTW: the new links ... should'n they point to ccache?
# ls -al /usr/lib/ccache/bin
lrwxrwxrwx 1 root root 12 Sep 13 14:01 c++ -> /usr/bin/c++
lrwxrwxrwx 1 root root 15 Jun 14 12:20 cc -> /usr/bin/ccache
lrwxrwxrwx 1 root root 12 Sep 13 14:01 g++ -> /usr/bin/g++
lrwxrwxrwx 1 root root 12 Sep 13 14:01 gcc -> /usr/bin/gcc
lrwxrwxrwx 1 root root 30 Sep 13 14:01 i686-pc-linux-gnu-c++ ->
/usr/bin/i686-pc-linux-gnu-c++
lrwxrwxrwx 1 root root 15 Jun 14 12:20 i686-pc-linux-gnu-cc -> /usr/bin/ccache
lrwxrwxrwx 1 root root 30 Sep 13 14:01 i686-pc-linux-gnu-g++ ->
/usr/bin/i686-pc-linux-gnu-g++
lrwxrwxrwx 1 root root 30 Sep 13 14:01 i686-pc-linux-gnu-gcc ->
/usr/bin/i686-pc-linux-gnu-gcc
(In reply to comment #12)
> (In reply to comment #11)
> > This should be fixed in 2.4-r3. Please test it.
>
> symlinks in /usr/lib/ccache/bin/* are now in pkg-db. but the old stale links cc
> and i686-pc-linux-gnu-cc were not removed.
Should be fixed in -r4. If you get still get collisions there and/or the stale
wrappers are not removed, see Bug 147446.
(In reply to comment #12)
> BTW: the new links ... should'n they point to ccache?
Oooops, lisa will commit -r5 shortly. :)
fixed in cvs. sorry for the delay.
okay, this time i mean it.
fixed in cvs.
Appologies for my confusion... Between all the bugs which are marked dupe of
this one and the various comments, I am not fully sure what to do to resolve
this issue, with specifically sys-libs/db-4.3.29-r2.
I have tried:
1) emerge db
2) FEATURES="-ccache" db
3) unmerge ccache, try 1 and 2 again
4) emerge x86 stable ccache (2.3 at this time), try 1 and 2 again
4) emerge ccache 2.4-r6, try 1 and 2 again
With no change. I see this is marked as resolved fixed, but I still see the
issue. What do I as an end user do to get past this?
Portage 2.1.2_pre1-r3 (default-linux/x86/2006.1/desktop, gcc-4.1.1,
glibc-2.4-r3, 2.6.18-ifc i686)
=================================================================
System uname: 2.6.18-ifc i686 Intel(R) Pentium(R) M processor 1.86GHz
Last Sync: Tue, 26 Sep 2006 18:20:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632)
[enabled]
app-admin/eselect-compiler: 2.0.0_rc2-r1
dev-java/java-config: 1.2.11-r1
dev-lang/python: 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache: [Not Present]
dev-util/confcache: [Not Present]
sys-apps/sandbox: 1.2.18.1
sys-devel/autoconf: 2.13, 2.60
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils: 2.17
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.17-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-Os -march=pentium-m -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/NX/etc /usr/NX/home /usr/kde/3.5/env
/usr/kde/3.5/share/config /usr/kde/3.5/shu
tdown /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/
/usr/share/texmf/dvips/config
/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/texmf/xdvi/"
*** Bug 151002 has been marked as a duplicate of this bug. ***
(In reply to comment #19)
> Appologies for my confusion... Between all the bugs which are marked dupe of
> this one and the various comments, I am not fully sure what to do to resolve
> this issue, with specifically sys-libs/db-4.3.29-r2.
>
I had a similar stale symlink error from distcc (which uses the same technique
as ccache to intercept compiler calls).
To track down the stale symlink, I used 'find /usr -name i686-pc-linux-gnu-cc"
(where i686-pc-linux-gnu-cc was the compiler that configure had found just
before it died). This found me a symlink in /usr/lib/distcc/bin that didn't
work.
*** Bug 157648 has been marked as a duplicate of this bug. ***
*** Bug 163757 has been marked as a duplicate of this bug. ***
*** Bug 172180 has been marked as a duplicate of this bug. ***
*** Bug 179753 has been marked as a duplicate of this bug. ***