Opened 5 weeks ago

Last modified 2 weeks ago

#16053 new bug

GHC build regression ("HSghc-prim-0.5.3.p_o: copyFile: does not exist")

Reported by: hvr Owned by:
Priority: highest Milestone: 8.8.1
Component: Build System (make) Version: 8.7
Keywords: Cc: alpmestan, watashi
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: Building GHC failed Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s): Phab:D5169
Wiki Page:

Description

Ben asked me to file this here:

Some time between 8.7.20181015+git.1.2e1df7c and 8.7.20181210+git.1.4773b43 the GHC build process as orchestrated by the automated PPA Debian package builds started failing with

/usr/bin/install -c -m 755 -d  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts"
for i in  rts/dist/build/libHSrts.a rts/dist/build/libHSrts-ghc8.7.20181210.so rts/dist/build/libHSrts_p.a rts/dist/build/libHSrts_l.a rts/dist/build/libHSrts_debug.a rts/dist/build/libHSrts_thr.a rts/dist/build/libHSrts_thr_debug.a rts/dist/build/libHSrts_thr_l.a rts/dist/build/libHSrts_thr_p.a rts/dist/build/libHSrts_debug-ghc8.7.20181210.so rts/dist/build/libHSrts_thr-ghc8.7.20181210.so rts/dist/build/libHSrts_thr_debug-ghc8.7.20181210.so rts/dist/build/libHSrts_l-ghc8.7.20181210.so rts/dist/build/libHSrts_thr_l-ghc8.7.20181210.so rts/dist/build/libHSrts_thr_debug_p.a rts/dist/build/libHSrts_debug_p.a rts/dist/build/libffi.so rts/dist/build/libffi.so.7 rts/dist/build/libffi.so.7.1.0 rts/dist/build/libCffi.a rts/dist/build/libCffi_p.a rts/dist/build/libCffi_l.a rts/dist/build/libCffi_debug.a rts/dist/build/libCffi_thr.a rts/dist/build/libCffi_thr_debug.a rts/dist/build/libCffi_thr_l.a rts/dist/build/libCffi_thr_p.a rts/dist/build/libCffi_thr_debug_p.a rts/dist/build/libCffi_debug_p.a; do case $i in *.a) /usr/bin/install -c -m 644  $i  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts"; true  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts"/`basename $i` ;; *.dll) /usr/bin/install -c -m 755  $i  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts" ; strip  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts"/`basename $i` ;; *.so) /usr/bin/install -c -m 755  $i  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts" ;; *.dylib) /usr/bin/install -c -m 755  $i  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts";; *) /usr/bin/install -c -m 644  $i  "/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/rts"; esac; done
"inplace/bin/ghc-cabal" copy libraries/ghc-prim dist-install "strip" '/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp' '/opt/ghc/head' '/opt/ghc/head/lib/ghc-8.7.20181210' '/opt/ghc/head/share/doc/ghc-8.7.20181210/html/libraries' 'v dyn p'  
Installing library in /<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp/opt/ghc/head/lib/ghc-8.7.20181210/ghc-prim-0.5.3
dist-install/build/HSghc-prim-0.5.3.p_o: copyFile: does not exist (No such file or directory)
make[2]: *** [install_packages] Error 1
make[1]: *** [install] Error 2
make[1]: Leaving directory `/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43'
dh_auto_install: make -j4 install DESTDIR=/<<BUILDDIR>>/ghc-head-8.7.20181210+git.1.4773b43/debian/tmp AM_UPDATE_INFO_DIR=no returned exit code 2

Full logs available at https://launchpadlibrarian.net/401081604/buildlog_ubuntu-trusty-amd64.ghc-head_8.7.20181210+git.1.4773b43-9~14.04_BUILDING.txt.gz

Change History (10)

comment:1 Changed 5 weeks ago by bgamari

Cc: alpmestan added
Milestone: 8.8.1
Priority: highhighest

I haven't quite finished bisecting yet but I strongly suspect that this is due to the Cabal changes introduced in fb9971607c5a41ade71338188c683ee9cb8ca6fc.

comment:2 Changed 5 weeks ago by bgamari

Not quite actually: 6353efc7694ba8ec86c091918e02595662169ae2 is the culprit. I still have no explanation for why bindisttest didn't catch this, however.

Last edited 5 weeks ago by bgamari (previous) (diff)

comment:3 Changed 5 weeks ago by bgamari

Differential Rev(s): Phab:D5169
Status: newpatch

I see; this will be fixed when we merge Phab:D5169, which is in my merge queue.

comment:4 Changed 4 weeks ago by alpmestan

Differential Rev(s): Phab:D5169
Last edited 4 weeks ago by alpmestan (previous) (diff)

comment:5 Changed 4 weeks ago by alpmestan

Differential Rev(s): Phab:D5169

comment:6 Changed 4 weeks ago by bgamari

Resolution: fixed
Status: patchclosed

comment:7 Changed 2 weeks ago by bgamari

Cc: watashi added
Resolution: fixed
Status: closednew

Unfortunately it Phab:D5169 did not appear to fix this in all cases: the binary distributions produced by CI using the perf flavour still fail in make install with:

"utils/ghc-cabal/dist-install/build/tmp/ghc-cabal-bindist" copy libraries/ghc-prim dist-install "strip" '' '/home/ben/tmp2/ghc-8.7.20181230/hi' '/home/ben/tmp2/ghc-8.7.20181230/hi/lib/ghc-8.7.20181230' '/home/ben/tmp2/ghc-8.7.20181230/hi/share/doc/ghc-8.7.20181230/html/libraries' 'v p dyn'  
Installing library in /home/ben/tmp2/ghc-8.7.20181230/hi/lib/ghc-8.7.20181230/ghc-prim-0.5.3
dist-install/build/HSghc-prim-0.5.3.o: copyFile: does not exist (No such file or directory)

comment:8 Changed 2 weeks ago by bgamari

Indeed libraries/ghc-prim/dist-install/build/HSghc-prim-0.5.3.p_o exists but libraries/ghc-prim/dist-install/build/HSghc-prim-0.5.3.o does not.

comment:9 Changed 2 weeks ago by bgamari

I built a BuildFlavour=perf build locally and found that while libraries/ghc-prim/dist-install/build/HSghc-prim-0.5.3.o was indeed built, it was not included in the binary distribution.

Note: See TracTickets for help on using tickets.