Opened 5 years ago

Last modified 11 months ago

#9685 new feature request

GHC fails to build with mingw32-make on Windows

Reported by: gintas Owned by:
Priority: low Milestone:
Component: Build System (make) Version: 7.9
Keywords: Cc: RyanGlScott
Operating System: Windows Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: #8596 Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:

Description

It would be nice to be able to build ghc on Windows with mingw32-make which is bundled with the prebuilt gcc package that we are using for the ghc build. mingw32-make might be faster (due to less overhead associated with POSIX compatibility, forks etc.) and more reliable - msys2's make is a bit glitchy because it needs to fork off a lot of processes and sometimes runs into issues with fork(), which should not be a problem for mingw32-make.

Change History (8)

comment:1 Changed 5 years ago by gintas

One of the issues is that a sed command line is being corrupted (I have a workaround for that), the other one presents itself like this:

"/usr/local/bin/ghc" -M -static  -H64m -O0 -fasm  -package-db libraries/bootstrapping.conf  -package-name ghc-7.9 -hide-all-packages -i -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen -icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename -icompiler/simplCore -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/vectorise -icompiler/stage1/build -icompiler/stage1/build/autogen -Icompiler/stage1/build -Icompiler/stage1/build/autogen -Icompiler/. -Icompiler/parser -Icompiler/utils -Icompiler/stage1    -optP-include -optPcompiler/stage1/build/autogen/cabal_macros.h -package Win32-2.3.0.2 -package array-0.5.0.0 -package base-4.7.0.1 -package bin-package-db-0.0.0.0 -package bytestring-0.10.4.0 -package containers-0.5.5.1 -package directory-1.2.1.0 -package filepath-1.3.0.2 -package hoopl-3.10.0.2 -package hpc-0.6.0.2 -package process-1.2.0.0 -package time-1.4.2 -package transformers-0.4.1.0 -Wall -fno-warn-name-shadowing -XHaskell2010 -DSTAGE=1 -Rghc-timing -O -fasm  -no-user-package-db -rtsopts      -odir compiler/stage1/build -hidir compiler/stage1/build -stubdir compiler/stage1/build -dep-makefile compiler/stage1/build/.depend-v.haskell.tmp -dep-suffix "" -include-pkg-deps  compiler/basicTypes/Avail.hs  compiler/basicTypes/BasicTypes.lhs  compiler/basicTypes/ConLike.lhs  compiler/basicTypes/DataCon.lhs  compiler/basicTypes/PatSyn.lhs  compiler/basicTypes/Demand.lhs  compiler/utils/Exception.hs  compiler/main/GhcMonad.hs  compiler/main/Hooks.lhs  compiler/basicTypes/Id.lhs  compiler/basicTypes/IdInfo.lhs  compiler/basicTypes/Literal.lhs  compiler/llvmGen/Llvm.hs  compiler/llvmGen/Llvm/AbsSyn.hs  compiler/llvmGen/Llvm/MetaData.hs  compiler/llvmGen/Llvm/PpLlvm.hs  compiler/llvmGen/Llvm/Types.hs  compiler/llvmGen/LlvmCodeGen.hs  compiler/llvmGen/LlvmCodeGen/Base.hs  compiler/llvmGen/LlvmCodeGen/CodeGen.hs  compiler/llvmGen/LlvmCodeGen/Data.hs  compiler/llvmGen/LlvmCodeGen/Ppr.hs  compiler/llvmGen/LlvmCodeGen/Regs.hs  compiler/llvmGen/LlvmMangler.hs  compiler/basicTypes/MkId.lhs  compiler/basicTypes/Module.lhs  compiler/basicTypes/Name.lhs  compiler/basicTypes/NameEnv.lhs  compiler/basicTypes/NameSet.lhs  compiler/basicTypes/OccName.lhs  compiler/basicTypes/RdrName.lhs  compiler/basicTypes/SrcLoc.lhs  compiler/basicTypes/UniqSupply.lhs  compiler/basicTypes/Unique.lhs  compiler/basicTypes/Var.lhs  compiler/basicTypes/VarEnv.lhs  compiler/basicTypes/VarSet.lhs  compiler/utils/UnVarGraph.hs  compiler/cmm/BlockId.hs  compiler/cmm/CLabel.hs  compiler/cmm/Cmm.hs  compiler/cmm/CmmBuildInfoTables.hs  compiler/cmm/CmmPipeline.hs  compiler/cmm/CmmCallConv.hs  compiler/cmm/CmmCommonBlockElim.hs  compiler/cmm/CmmContFlowOpt.hs  compiler/cmm/CmmExpr.hs  compiler/cmm/CmmInfo.hs  compiler/stage1/build/CmmLex.hs  compiler/cmm/CmmLint.hs  compiler/cmm/CmmLive.hs  compiler/cmm/CmmMachOp.hs  compiler/cmm/CmmNode.hs  compiler/cmm/CmmOpt.hs  compiler/stage1/build/CmmParse.hs  compiler/cmm/CmmProcPoint.hs  compiler/cmm/CmmSink.hs  compiler/cmm/CmmType.hs  compiler/cmm/CmmUtils.hs  compiler/cmm/CmmLayoutStack.hs  compiler/cmm/MkGraph.hs  compiler/nativeGen/PprBase.hs  compiler/cmm/PprC.hs  compiler/cmm/PprCmm.hs  compiler/cmm/PprCmmDecl.hs  compiler/cmm/PprCmmExpr.hs  compiler/cmm/Bitmap.hs  compiler/codeGen/CodeGen/Platform.hs  compiler/codeGen/CodeGen/Platform/ARM.hs  compiler/codeGen/CodeGen/Platform/NoRegs.hs  compiler/codeGen/CodeGen/Platform/PPC.hs  compiler/codeGen/CodeGen/Platform/PPC_Darwin.hs  compiler/codeGen/CodeGen/Platform/SPARC.hs  compiler/codeGen/CodeGen/Platform/X86.hs  compiler/codeGen/CodeGen/Platform/X86_64.hs  compiler/codeGen/CgUtils.hs  compiler/codeGen/StgCmm.hs  compiler/codeGen/StgCmmBind.hs  compiler/codeGen/StgCmmClosure.hs  compiler/codeGen/StgCmmCon.hs  compiler/codeGen/StgCmmEnv.hs  compiler/codeGen/StgCmmExpr.hs  compiler/codeGen/StgCmmForeign.hs  compiler/codeGen/StgCmmHeap.hs  compiler/codeGen/StgCmmHpc.hs  compiler/codeGen/StgCmmArgRep.hs  compiler/codeGen/StgCmmLayout.hs  compiler/codeGen/StgCmmMonad.hs  compiler/codeGen/StgCmmPrim.hs  compiler/codeGen/StgCmmProf.hs  compiler/codeGen/StgCmmTicky.hs  compiler/codeGen/StgCmmUtils.hs  compiler/codeGen/StgCmmExtCode.hs  compiler/cmm/SMRep.lhs  compiler/coreSyn/CoreArity.lhs  compiler/coreSyn/CoreFVs.lhs  compiler/coreSyn/CoreLint.lhs  compiler/coreSyn/CorePrep.lhs  compiler/coreSyn/CoreSubst.lhs  compiler/coreSyn/CoreSyn.lhs  compiler/coreSyn/TrieMap.lhs  compiler/coreSyn/CoreTidy.lhs  compiler/coreSyn/CoreUnfold.lhs  compiler/coreSyn/CoreUtils.lhs  compiler/coreSyn/MkCore.lhs  compiler/coreSyn/PprCore.lhs  compiler/deSugar/Check.lhs  compiler/deSugar/Coverage.lhs  compiler/deSugar/Desugar.lhs  compiler/deSugar/DsArrows.lhs  compiler/deSugar/DsBinds.lhs  compiler/deSugar/DsCCall.lhs  compiler/deSugar/DsExpr.lhs  compiler/deSugar/DsForeign.lhs  compiler/deSugar/DsGRHSs.lhs  compiler/deSugar/DsListComp.lhs  compiler/deSugar/DsMonad.lhs  compiler/deSugar/DsUtils.lhs  compiler/deSugar/Match.lhs  compiler/deSugar/MatchCon.lhs  compiler/deSugar/MatchLit.lhs  compiler/hsSyn/HsBinds.lhs  compiler/hsSyn/HsDecls.lhs  compiler/hsSyn/HsDoc.hs  compiler/hsSyn/HsExpr.lhs  compiler/hsSyn/HsImpExp.lhs  compiler/hsSyn/HsLit.lhs  compiler/hsSyn/PlaceHolder.hs  compiler/hsSyn/HsPat.lhs  compiler/hsSyn/HsSyn.lhs  compiler/hsSyn/HsTypes.lhs  compiler/hsSyn/HsUtils.lhs  compiler/iface/BinIface.hs  compiler/iface/BuildTyCl.lhs  compiler/iface/IfaceEnv.lhs  compiler/iface/IfaceSyn.lhs  compiler/iface/IfaceType.lhs  compiler/iface/LoadIface.lhs  compiler/iface/MkIface.lhs  compiler/iface/TcIface.lhs  compiler/iface/FlagChecker.hs  compiler/main/Annotations.hs  compiler/main/BreakArray.hs  compiler/main/CmdLineParser.hs  compiler/main/CodeOutput.lhs  compiler/stage1/build/Config.hs  compiler/main/Constants.lhs  compiler/main/DriverMkDepend.hs  compiler/main/DriverPhases.hs  compiler/main/PipelineMonad.hs  compiler/main/DriverPipeline.hs  compiler/main/DynFlags.hs  compiler/main/ErrUtils.lhs  compiler/main/Finder.lhs  compiler/main/GHC.hs  compiler/main/GhcMake.hs  compiler/main/GhcPlugins.hs  compiler/main/DynamicLoading.hs  compiler/main/HeaderInfo.hs  compiler/main/HscMain.hs  compiler/main/HscStats.hs  compiler/main/HscTypes.lhs  compiler/main/InteractiveEval.hs  compiler/main/InteractiveEvalTypes.hs  compiler/main/PackageConfig.hs  compiler/main/Packages.lhs  compiler/main/PlatformConstants.hs  compiler/main/PprTyThing.hs  compiler/main/StaticFlags.hs  compiler/main/SysTools.lhs  compiler/main/TidyPgm.lhs  compiler/parser/Ctype.lhs  compiler/parser/HaddockUtils.hs  compiler/stage1/build/Lexer.hs  compiler/types/OptCoercion.lhs  compiler/stage1/build/Parser.hs  compiler/parser/RdrHsSyn.lhs  compiler/prelude/ForeignCall.lhs  compiler/prelude/PrelInfo.lhs  compiler/prelude/PrelNames.lhs  compiler/prelude/PrelRules.lhs  compiler/prelude/PrimOp.lhs  compiler/prelude/TysPrim.lhs  compiler/prelude/TysWiredIn.lhs  compiler/profiling/CostCentre.lhs  compiler/profiling/ProfInit.hs  compiler/profiling/SCCfinal.lhs  compiler/rename/RnBinds.lhs  compiler/rename/RnEnv.lhs  compiler/rename/RnExpr.lhs  compiler/rename/RnHsDoc.hs  compiler/rename/RnNames.lhs  compiler/rename/RnPat.lhs  compiler/rename/RnSource.lhs  compiler/rename/RnSplice.lhs  compiler/rename/RnTypes.lhs  compiler/simplCore/CoreMonad.lhs  compiler/simplCore/CSE.lhs  compiler/simplCore/FloatIn.lhs  compiler/simplCore/FloatOut.lhs  compiler/simplCore/LiberateCase.lhs  compiler/simplCore/OccurAnal.lhs  compiler/simplCore/SAT.lhs  compiler/simplCore/SetLevels.lhs  compiler/simplCore/SimplCore.lhs  compiler/simplCore/SimplEnv.lhs  compiler/simplCore/SimplMonad.lhs  compiler/simplCore/SimplUtils.lhs  compiler/simplCore/Simplify.lhs  compiler/simplStg/SimplStg.lhs  compiler/simplStg/StgStats.lhs  compiler/simplStg/UnariseStg.lhs  compiler/specialise/Rules.lhs  compiler/specialise/SpecConstr.lhs  compiler/specialise/Specialise.lhs  compiler/stgSyn/CoreToStg.lhs  compiler/stgSyn/StgLint.lhs  compiler/stgSyn/StgSyn.lhs  compiler/simplCore/CallArity.hs  compiler/stranal/DmdAnal.lhs  compiler/stranal/WorkWrap.lhs  compiler/stranal/WwLib.lhs  compiler/typecheck/FamInst.lhs  compiler/typecheck/Inst.lhs  compiler/typecheck/TcAnnotations.lhs  compiler/typecheck/TcArrows.lhs  compiler/typecheck/TcBinds.lhs  compiler/typecheck/TcClassDcl.lhs  compiler/typecheck/TcDefaults.lhs  compiler/typecheck/TcDeriv.lhs  compiler/typecheck/TcEnv.lhs  compiler/typecheck/TcExpr.lhs  compiler/typecheck/TcForeign.lhs  compiler/typecheck/TcGenDeriv.lhs  compiler/typecheck/TcGenGenerics.lhs  compiler/typecheck/TcHsSyn.lhs  compiler/typecheck/TcHsType.lhs  compiler/typecheck/TcInstDcls.lhs  compiler/typecheck/TcMType.lhs  compiler/typecheck/TcValidity.lhs  compiler/typecheck/TcMatches.lhs  compiler/typecheck/TcPat.lhs  compiler/typecheck/TcPatSyn.lhs  compiler/typecheck/TcRnDriver.lhs  compiler/typecheck/TcRnMonad.lhs  compiler/typecheck/TcRnTypes.lhs  compiler/typecheck/TcRules.lhs  compiler/typecheck/TcSimplify.lhs  compiler/typecheck/TcErrors.lhs  compiler/typecheck/TcTyClsDecls.lhs  compiler/typecheck/TcTyDecls.lhs  compiler/typecheck/TcType.lhs  compiler/typecheck/TcEvidence.lhs  compiler/typecheck/TcUnify.lhs  compiler/typecheck/TcInteract.lhs  compiler/typecheck/TcCanonical.lhs  compiler/typecheck/TcSMonad.lhs  compiler/typecheck/TcTypeNats.hs  compiler/typecheck/TcSplice.lhs  compiler/types/Class.lhs  compiler/types/Coercion.lhs  compiler/types/FamInstEnv.lhs  compiler/typecheck/FunDeps.lhs  compiler/types/InstEnv.lhs  compiler/types/TyCon.lhs  compiler/types/CoAxiom.lhs  compiler/types/Kind.lhs  compiler/types/Type.lhs  compiler/types/TypeRep.lhs  compiler/types/Unify.lhs  compiler/utils/Bag.lhs  compiler/utils/Binary.hs  compiler/utils/BooleanFormula.hs  compiler/utils/BufWrite.hs  compiler/utils/Digraph.lhs  compiler/utils/Encoding.hs  compiler/utils/FastBool.lhs  compiler/utils/FastFunctions.lhs  compiler/utils/FastMutInt.lhs  compiler/utils/FastString.lhs  compiler/utils/FastTypes.lhs  compiler/stage1/build/Fingerprint.hs  compiler/utils/FiniteMap.lhs  compiler/utils/GraphBase.hs  compiler/utils/GraphColor.hs  compiler/utils/GraphOps.hs  compiler/utils/GraphPpr.hs  compiler/utils/IOEnv.hs  compiler/utils/ListSetOps.lhs  compiler/utils/Maybes.lhs  compiler/utils/MonadUtils.hs  compiler/utils/OrdList.lhs  compiler/utils/Outputable.lhs  compiler/utils/Pair.lhs  compiler/utils/Panic.lhs  compiler/utils/Pretty.lhs  compiler/utils/Serialized.hs  compiler/utils/State.hs  compiler/utils/Stream.hs  compiler/utils/StringBuffer.lhs  compiler/utils/UniqFM.lhs  compiler/utils/UniqSet.lhs  compiler/utils/Util.lhs  compiler/utils/ExtsCompat46.hs  compiler/vectorise/Vectorise/Builtins/Base.hs  compiler/vectorise/Vectorise/Builtins/Initialise.hs  compiler/vectorise/Vectorise/Builtins.hs  compiler/vectorise/Vectorise/Monad/Base.hs  compiler/vectorise/Vectorise/Monad/Naming.hs  compiler/vectorise/Vectorise/Monad/Local.hs  compiler/vectorise/Vectorise/Monad/Global.hs  compiler/vectorise/Vectorise/Monad/InstEnv.hs  compiler/vectorise/Vectorise/Monad.hs  compiler/vectorise/Vectorise/Utils/Base.hs  compiler/vectorise/Vectorise/Utils/Closure.hs  compiler/vectorise/Vectorise/Utils/Hoisting.hs  compiler/vectorise/Vectorise/Utils/PADict.hs  compiler/vectorise/Vectorise/Utils/Poly.hs  compiler/vectorise/Vectorise/Utils.hs  compiler/vectorise/Vectorise/Generic/Description.hs  compiler/vectorise/Vectorise/Generic/PAMethods.hs  compiler/vectorise/Vectorise/Generic/PADict.hs  compiler/vectorise/Vectorise/Generic/PData.hs  compiler/vectorise/Vectorise/Type/Env.hs  compiler/vectorise/Vectorise/Type/Type.hs  compiler/vectorise/Vectorise/Type/TyConDecl.hs  compiler/vectorise/Vectorise/Type/Classify.hs  compiler/vectorise/Vectorise/Convert.hs  compiler/vectorise/Vectorise/Vect.hs  compiler/vectorise/Vectorise/Var.hs  compiler/vectorise/Vectorise/Env.hs  compiler/vectorise/Vectorise/Exp.hs  compiler/vectorise/Vectorise.hs  compiler/cmm/Hoopl/Dataflow.hs  compiler/cmm/Hoopl.hs  compiler/nativeGen/AsmCodeGen.lhs  compiler/nativeGen/TargetReg.hs  compiler/nativeGen/NCGMonad.hs  compiler/nativeGen/Instruction.hs  compiler/nativeGen/Size.hs  compiler/nativeGen/Reg.hs  compiler/nativeGen/RegClass.hs  compiler/nativeGen/PIC.hs  compiler/utils/Platform.hs  compiler/nativeGen/CPrim.hs  compiler/nativeGen/X86/Regs.hs  compiler/nativeGen/X86/RegInfo.hs  compiler/nativeGen/X86/Instr.hs  compiler/nativeGen/X86/Cond.hs  compiler/nativeGen/X86/Ppr.hs  compiler/nativeGen/X86/CodeGen.hs  compiler/nativeGen/PPC/Regs.hs  compiler/nativeGen/PPC/RegInfo.hs  compiler/nativeGen/PPC/Instr.hs  compiler/nativeGen/PPC/Cond.hs  compiler/nativeGen/PPC/Ppr.hs  compiler/nativeGen/PPC/CodeGen.hs  compiler/nativeGen/SPARC/Base.hs  compiler/nativeGen/SPARC/Regs.hs  compiler/nativeGen/SPARC/Imm.hs  compiler/nativeGen/SPARC/AddrMode.hs  compiler/nativeGen/SPARC/Cond.hs  compiler/nativeGen/SPARC/Instr.hs  compiler/nativeGen/SPARC/Stack.hs  compiler/nativeGen/SPARC/ShortcutJump.hs  compiler/nativeGen/SPARC/Ppr.hs  compiler/nativeGen/SPARC/CodeGen.hs  compiler/nativeGen/SPARC/CodeGen/Amode.hs  compiler/nativeGen/SPARC/CodeGen/Base.hs  compiler/nativeGen/SPARC/CodeGen/CondCode.hs  compiler/nativeGen/SPARC/CodeGen/Gen32.hs  compiler/nativeGen/SPARC/CodeGen/Gen64.hs  compiler/nativeGen/SPARC/CodeGen/Sanity.hs  compiler/nativeGen/SPARC/CodeGen/Expand.hs  compiler/nativeGen/RegAlloc/Liveness.hs  compiler/nativeGen/RegAlloc/Graph/Main.hs  compiler/nativeGen/RegAlloc/Graph/Stats.hs  compiler/nativeGen/RegAlloc/Graph/ArchBase.hs  compiler/nativeGen/RegAlloc/Graph/ArchX86.hs  compiler/nativeGen/RegAlloc/Graph/Coalesce.hs  compiler/nativeGen/RegAlloc/Graph/Spill.hs  compiler/nativeGen/RegAlloc/Graph/SpillClean.hs  compiler/nativeGen/RegAlloc/Graph/SpillCost.hs  compiler/nativeGen/RegAlloc/Graph/TrivColorable.hs  compiler/nativeGen/RegAlloc/Linear/Main.hs  compiler/nativeGen/RegAlloc/Linear/JoinToTargets.hs  compiler/nativeGen/RegAlloc/Linear/State.hs  compiler/nativeGen/RegAlloc/Linear/Stats.hs  compiler/nativeGen/RegAlloc/Linear/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/StackMap.hs  compiler/nativeGen/RegAlloc/Linear/Base.hs  compiler/nativeGen/RegAlloc/Linear/X86/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/X86_64/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/PPC/FreeRegs.hs  compiler/nativeGen/RegAlloc/Linear/SPARC/FreeRegs.hs

target `compil' is not a module name or a source file
<<ghc: 87804256 bytes, 42 GCs, 1172030/1972696 avg/max bytes residency (4 samples), 55M in use, 0.00 INIT (0.00 elapsed), 0.05 MUT (2.06 elapsed), 0.00 GC (0.03 elapsed) :ghc>>
compiler/ghc.mk:656: recipe for target 'compiler/stage1/build/.depend-v.haskell' failed

This could be due to a truncation of a long command line.

Last edited 4 years ago by bgamari (previous) (diff)

comment:2 Changed 5 years ago by gintas

Priority: normallow

comment:3 Changed 5 years ago by gintas

This is indeed due to command line truncation.

comment:4 Changed 4 years ago by Phyx-

Blocked By: 8596, 10777 added

comment:5 Changed 4 years ago by snoyberg

Blocked By: 10777 removed

comment:6 Changed 4 years ago by gintas

Owner: gintas deleted

comment:7 Changed 3 years ago by RyanGlScott

Cc: RyanGlScott added

comment:8 Changed 11 months ago by bgamari

Component: Build SystemBuild System (make)

The new Hadrian build system has been merged. Relabeling the tickets concerning the legacy make build system to prevent confusion.

Note: See TracTickets for help on using tickets.