Closed bradfitz closed 9 years ago
Setting set -x to the buildscript, I see it end with: # Building go command from bootstrap script. + mkdir -p /tmp/go-build.cAFXfk/runtime/_obj/ + cd /home/bradfitz/go/src/pkg/runtime + 6g -o /tmp/go-build.cAFXfk/runtime/_obj/_go_.6 -p runtime -+ -I /tmp/go-build.cAFXfk ./debug.go ./error.go ./extern.go ./mem.go ./sig.go ./softfloat64.go ./type.go ./zgoarch_amd64.go ./zgoos_linux.go ./zruntime_defs_linux_amd64.go ./zversion.go + cp /home/bradfitz/go/src/pkg/runtime/arch_amd64.h /tmp/go-build.cAFXfk/runtime/_obj/arch_GOARCH.h + cp /home/bradfitz/go/src/pkg/runtime/defs_linux_amd64.h /tmp/go-build.cAFXfk/runtime/_obj/defs_GOOS_GOARCH.h + cp /home/bradfitz/go/src/pkg/runtime/os_linux.h /tmp/go-build.cAFXfk/runtime/_obj/os_GOOS.h + cp /home/bradfitz/go/src/pkg/runtime/signals_linux.h /tmp/go-build.cAFXfk/runtime/_obj/signals_GOOS.h + cp /home/bradfitz/go/src/pkg/runtime/zasm_linux_amd64.h /tmp/go-build.cAFXfk/runtime/_obj/zasm_GOOS_GOARCH.h + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/alg.6 -DGOOS_linux -DGOARCH_amd64 ./alg.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/atomic_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./atomic_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/cgocall.6 -DGOOS_linux -DGOARCH_amd64 ./cgocall.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/chan.6 -DGOOS_linux -DGOARCH_amd64 ./chan.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/closure_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./closure_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/complex.6 -DGOOS_linux -DGOARCH_amd64 ./complex.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/cpuprof.6 -DGOOS_linux -DGOARCH_amd64 ./cpuprof.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/float.6 -DGOOS_linux -DGOARCH_amd64 ./float.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/hashmap.6 -DGOOS_linux -DGOARCH_amd64 ./hashmap.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/iface.6 -DGOOS_linux -DGOARCH_amd64 ./iface.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/lock_futex.6 -DGOOS_linux -DGOARCH_amd64 ./lock_futex.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/mcache.6 -DGOOS_linux -DGOARCH_amd64 ./mcache.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/mcentral.6 -DGOOS_linux -DGOARCH_amd64 ./mcentral.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/mem_linux.6 -DGOOS_linux -DGOARCH_amd64 ./mem_linux.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/mfinal.6 -DGOOS_linux -DGOARCH_amd64 ./mfinal.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/mfixalloc.6 -DGOOS_linux -DGOARCH_amd64 ./mfixalloc.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/mgc0.6 -DGOOS_linux -DGOARCH_amd64 ./mgc0.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/mheap.6 -DGOOS_linux -DGOARCH_amd64 ./mheap.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/msize.6 -DGOOS_linux -DGOARCH_amd64 ./msize.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/print.6 -DGOOS_linux -DGOARCH_amd64 ./print.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/proc.6 -DGOOS_linux -DGOARCH_amd64 ./proc.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/rune.6 -DGOOS_linux -DGOARCH_amd64 ./rune.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/runtime.6 -DGOOS_linux -DGOARCH_amd64 ./runtime.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/signal_linux_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./signal_linux_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/slice.6 -DGOOS_linux -DGOARCH_amd64 ./slice.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/symtab.6 -DGOOS_linux -DGOARCH_amd64 ./symtab.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/thread_linux.6 -DGOOS_linux -DGOARCH_amd64 ./thread_linux.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/traceback_x86.6 -DGOOS_linux -DGOARCH_amd64 ./traceback_x86.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/zmalloc_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./zmalloc_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/zmprof_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./zmprof_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/zruntime1_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./zruntime1_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/zsema_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./zsema_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/zsigqueue_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./zsigqueue_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/zstring_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./zstring_amd64.c + 6c -FVw -I /tmp/go-build.cAFXfk/runtime/_obj/ -I /home/bradfitz/go/pkg/linux_amd64 -o /tmp/go-build.cAFXfk/runtime/_obj/ztime_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./ztime_amd64.c + 6a -I /tmp/go-build.cAFXfk/runtime/_obj/ -o /tmp/go-build.cAFXfk/runtime/_obj/asm_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./asm_amd64.s + 6a -I /tmp/go-build.cAFXfk/runtime/_obj/ -o /tmp/go-build.cAFXfk/runtime/_obj/memmove_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./memmove_amd64.s + 6a -I /tmp/go-build.cAFXfk/runtime/_obj/ -o /tmp/go-build.cAFXfk/runtime/_obj/rt0_linux_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./rt0_linux_amd64.s + 6a -I /tmp/go-build.cAFXfk/runtime/_obj/ -o /tmp/go-build.cAFXfk/runtime/_obj/sys_linux_amd64.6 -DGOOS_linux -DGOARCH_amd64 ./sys_linux_amd64.s + gopack grc /tmp/go-build.cAFXfk/runtime.a /tmp/go-build.cAFXfk/runtime/_obj/_go_.6 /tmp/go-build.cAFXfk/runtime/_obj/alg.6 /tmp/go-build.cAFXfk/runtime/_obj/atomic_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/cgocall.6 /tmp/go-build.cAFXfk/runtime/_obj/chan.6 /tmp/go-build.cAFXfk/runtime/_obj/closure_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/complex.6 /tmp/go-build.cAFXfk/runtime/_obj/cpuprof.6 /tmp/go-build.cAFXfk/runtime/_obj/float.6 /tmp/go-build.cAFXfk/runtime/_obj/hashmap.6 /tmp/go-build.cAFXfk/runtime/_obj/iface.6 /tmp/go-build.cAFXfk/runtime/_obj/lock_futex.6 /tmp/go-build.cAFXfk/runtime/_obj/mcache.6 /tmp/go-build.cAFXfk/runtime/_obj/mcentral.6 /tmp/go-build.cAFXfk/runtime/_obj/mem_linux.6 /tmp/go-build.cAFXfk/runtime/_obj/mfinal.6 /tmp/go-build.cAFXfk/runtime/_obj/mfixalloc.6 /tmp/go-build.cAFXfk/runtime/_obj/mgc0.6 /tmp/go-build.cAFXfk/runtime/_obj/mheap.6 /tmp/go-build.cAFXfk/runtime/_obj/msize.6 /tmp/go-build.cAFXfk/runtime/_obj/print.6 /tmp/go-build.cAFXfk/runtime/_obj/proc.6 /tmp/go-build.cAFXfk/runtime/_obj/rune.6 /tmp/go-build.cAFXfk/runtime/_obj/runtime.6 /tmp/go-build.cAFXfk/runtime/_obj/signal_linux_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/slice.6 /tmp/go-build.cAFXfk/runtime/_obj/symtab.6 /tmp/go-build.cAFXfk/runtime/_obj/thread_linux.6 /tmp/go-build.cAFXfk/runtime/_obj/traceback_x86.6 /tmp/go-build.cAFXfk/runtime/_obj/zmalloc_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/zmprof_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/zruntime1_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/zsema_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/zsigqueue_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/zstring_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/ztime_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/asm_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/memmove_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/rt0_linux_amd64.6 /tmp/go-build.cAFXfk/runtime/_obj/sys_linux_amd64.6 gopack: write error: No such file or directory + rm -rf /tmp/go-build.cAFXfk
Okay, this was boring. After tweaking gopack more, I got it to spit out the real error message: /tmp was full. But I never noticed because of the buildscript's rm -rf $WORKDIR trap. But gopack's arwrite could re-try the remainder of the write so errno is set to something useful so perror could print a good error message.
I think this may be fixed, at least now we get a reliable error. # launchpad.net/juju-core/worker/uniter_test pack: non-object file $WORK/launchpad.net/juju-core/worker/uniter/_test/_go_.6 pack: zero length file $WORK/launchpad.net/juju-core/worker/uniter/_test/_go_.6 pack: write error: No space left on device
Here is an interesting datapoint The host I was building on was 100% full on / # Building compilers and Go bootstrap tool for host, linux/arm. lib9 libbio libmach misc/pprof cmd/addr2line cmd/nm cmd/objdump cmd/pack cmd/prof cmd/cc cmd/gc cmd/5l cmd/5a cmd/5c cmd/5g pkg/runtime pack: write error: No such file or directory go tool dist: FAILED: /home/cubie/go/pkg/tool/linux_arm/pack grc /home/cubie/go/pkg/linux_arm/runtime.a $WORK/alg.o $WORK/asm_arm.o $WORK/atomic_arm.o $WORK/cgocall.o $WORK/chan.o $WORK/complex.o $WORK/cpuprof.o $WORK/env_posix.o $WORK/float.o $WORK/hashmap.o $WORK/iface.o $WORK/lfstack.o $WORK/lock_futex.o $WORK/mcache.o $WORK/mcentral.o $WORK/mem_linux.o $WORK/memclr_arm.o $WORK/memmove_arm.o $WORK/mfinal.o $WORK/mfixalloc.o $WORK/mgc0.o $WORK/mheap.o $WORK/msize.o $WORK/netpoll_epoll.o $WORK/os_linux.o $WORK/os_linux_arm.o $WORK/panic.o $WORK/parfor.o $WORK/print.o $WORK/proc.o $WORK/race0.o $WORK/rt0_linux_arm.o $WORK/rune.o $WORK/runtime.o $WORK/signal_arm.o $WORK/signal_unix.o $WORK/slice.o $WORK/softfloat_arm.o $WORK/stack.o $WORK/symtab.o $WORK/sys_arm.o $WORK/sys_linux_arm.o $WORK/traceback_arm.o $WORK/vlop_arm.o $WORK/vlrt_arm.o $WORK/zmalloc_linux_arm.o $WORK/zmprof_linux_arm.o $WORK/znetpoll_linux_arm.o $WORK/znoasm_arm_linux_arm.o $WORK/zruntime1_linux_arm.o $WORK/zsema_linux_arm.o $WORK/zsigqueue_linux_arm.o $WORK/zstring_linux_arm.o $WORK/zsys_linux_arm.o $WORK/ztime_linux_arm.o $WORK/_go_.5 cubie@Cubian:~/go/src$ ls -al /home/cubie/go/pkg/linux_arm/runtime.a -rw-r--r-- 1 cubie cubie 1642496 Oct 9 04:47 /home/cubie/go/pkg/linux_arm/runtime.a