[ccache] amd64 buildworld (FreeBSD 8.0p2) consistently fails with ccache

Joel Rosdahl joel at rosdahl.net
Wed May 12 00:25:22 MDT 2010


On 2010-05-11 01:38, Christer Edwards wrote:
> I've got another failure (same place) on 3.0pre1.Below are the details:
> 
> I executed 'ccache make buildworld' at /usr/src.

Putting ccache before make doesn't gain anything (but doesn't do any
harm either, except that an error counter in ccache's statistics will be
increased).

> [...]
> [2010-05-10T17:30:38.825974 53291] Running preprocessor
> [2010-05-10T17:30:38.827775 53292] Executing
> /usr/obj/usr/src/tmp/usr/bin/cc -O2 -pipe
> -I/usr/src/lib/csu/i386-elf/../common
> -I/usr/src/lib/csu/i386-elf/../../libc/include -std=gnu99
> -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
> -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
> -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch
> -Wshadow -Wcast-align -Wunused-parameter -Wchar-subscripts -Winline
> -Wnested-externs -Wredundant-decls -Wno-pointer-sign -c -E
> /usr/src/lib/csu/i386-elf/crt1.c
> [...]
> [2010-05-10T17:30:38.853797 53291] Running real compiler
> [2010-05-10T17:30:38.855228 53294] Executing
> /usr/obj/usr/src/tmp/usr/bin/cc -O2 -pipe
> -I/usr/src/lib/csu/i386-elf/../common
> -I/usr/src/lib/csu/i386-elf/../../libc/include -std=gnu99
> -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
> -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
> -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch
> -Wshadow -Wcast-align -Wunused-parameter -Wchar-subscripts -Winline
> -Wnested-externs -Wredundant-decls -Wno-pointer-sign -c -o
> /usr/.ccache/7/e/00e1bb753cccab0b3367e6287435a8-23935.o.tmp.mouzone.part.net.53291
> /usr/.ccache/tmp/crt1.tmp.mouzone.part.net.53291.i
> [2010-05-10T17:30:38.903089 53291] Compiler gave exit status 1
> [2010-05-10T17:30:38.903377 53291] Copying
> /usr/.ccache/7/e/00e1bb753cccab0b3367e6287435a8-23935.o.tmp.mouzone.part.net.53291
> to crt1.o (uncompressed)
> [2010-05-10T17:30:38.906771 53291] open error: No such file or directory

Nothing strange there, I'm afraid.

Just to make it clear: The build works without ccache, right?

Does it work to run the first command in the log above (after
"Executing"), redirect the output to crt1.i and then run the second
command with "-o crt1.o crt1.i"? If it doesn't work, it's probably a
compiler problem since it can't compile its own preprocessed output. A
workaround for that is to set CCACHE_CPP2 (preferably only when building
the troublesome file). If it works when you run the two commands
manually but not when ccache runs them, then I'm out of guesses.

By the way, I found another thread about the same problem here:
http://www.pubbs.net/200912/freebsd/12812-8-stable-broken-on-amd64.html

-- Joel


More information about the ccache mailing list