Opened 4 years ago

Closed 4 years ago

#7871 closed bug (fixed)

7.6.3 failed to build with make -j12

Reported by: nwf Owned by:
Priority: normal Milestone:
Component: Build System Version: 7.6.3
Keywords: Cc:
Operating System: Linux Architecture: x86_64 (amd64)
Type of failure: Building GHC failed Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:


This looks to be a missing dependency in the build system:

  HC [stage 1] compiler/stage2/build/TcSplice.o-boot
  HC [stage 1] compiler/stage2/build/CodeOutput.o
  HC [stage 1] compiler/stage2/build/RnHsDoc.o
  HC [stage 1] compiler/stage2/build/RnExpr.o-boot
  HC [stage 1] compiler/stage2/build/TcExpr.o-boot
  HC [stage 1] compiler/stage2/build/TcUnify.o-boot
  HC [stage 1] compiler/stage2/build/TcMatches.o-boot
  HC [stage 1] compiler/stage2/build/FloatIn.o
  HC [stage 1] libraries/bin-package-db/dist-install/build/
Warning: -rtsopts and -with-rtsopts have no effect with -shared.
    Call hs_init_ghc() from your main() function to set these options.
  HC [stage 1] libraries/Cabal/Cabal/dist-install/build/Distribution/Simple/Haddock.p_o
  HC [stage 1] compiler/stage2/build/Rules.p_o
  HC [stage 1] compiler/stage2/build/HsExpr.p_o
/usr/bin/ld: cannot find -lHSbin-package-db-
collect2: ld returned 1 exit status
make[1]: *** [compiler/stage2/build/] Error 1
make[1]: *** Waiting for unfinished jobs....
"rm" -f libraries/haskeline/dist-install/build/libHShaskeline-
"rm" -f libraries/haskeline/dist-install/build/libHShaskeline-
"rm" -f libraries/Cabal/Cabal/dist-install/build/libHSCabal-1.16.0.a.contents
make: *** [all] Error 2

Re-running make without a -j option after this failure completes successfully.

Change History (1)

comment:1 Changed 4 years ago by igloo

difficulty: Unknown
Resolution: fixed
Status: newclosed

Thanks for the report. Happily, it looks like this is already fixed in HEAD:

$ rm libraries/bin-package-db/dist-install/build/
$ make compiler/stage2/build/
===--- building phase 0
make -r --no-print-directory -f phase=0 phase_0_builds
make[1]: Nothing to be done for `phase_0_builds'.
===--- building phase 1
make -r --no-print-directory -f phase=1 phase_1_builds
make[1]: Nothing to be done for `phase_1_builds'.
===--- building final phase
make -r --no-print-directory -f phase=final compiler/stage2/build/
$ rm libraries/bin-package-db/dist-install/build/
$ make compiler/stage2/build/
"inplace/bin/ghc-stage1" [...] -o libraries/bin-package-db/dist-install/build/
Note: See TracTickets for help on using tickets.