Cannot build `master`, tries to use GHC 9.2?!

ÉRDI Gergő gergo at erdi.hu
Thu Jul 11 04:10:28 UTC 2024


OK so it turns out there were two issues at play here:

* I had `_build` as a symlink, and that's no bueno since Hadrian passes 
some relative paths like `_build/../libraries` to some command lines. This 
isn't ideal but is not a dealbreaker.

* It turns out Hadrian recently was broken with regard to Hadrian-building 
vs. GHC-bootstrapping Haskell compilers. I've filed this as 
https://gitlab.haskell.org/ghc/ghc/-/issues/25076.

On Wed, 10 Jul 2024, ÉRDI Gergő wrote:

> By playing around with GHC versions, Stack resolvers, and trying 
> `hadrian/build` instead of `hadrian/build-stack`, I now got somewhat further:
>
> Error: hadrian: Missing dependency on a foreign library:
> * Missing (or bad) header file: HsBase.h
>
> But `HsBase.h` should come from the GHC source tree itself, right? So it's 
> not an unresolved external dependency.
>
> It's very much possible that this is all because of some local configuration 
> problem on my machine, but I'm still going to need some hints on where to 
> even start looking.
>
> Thanks,
> 	Gerg
>
> On Mon, 8 Jul 2024, ÉRDI Gergő wrote:
>
>> Hi,
>> 
>> I'm trying to build GHC 5b1aefb70edbd54ac899896df39d8f3d6c579518 but I'm 
>> running into a weird problem. Using `hadrian/build-stack`, it fails quite 
>> early on with:
>> 
>> | Run Ghc CompileCWithGhc (Stage0 GlobalLibs): utils/hsc2hs/cbits/utils.c 
>> => _build/stageBoot/utils/hsc2hs/build/c/cbits/utils.o
>> Command line: ghc -Wall -hisuf hi -osuf o -hcsuf hc -static 
>> -hide-all-packages -no-user-package-db '-package-env -' '-package-db 
>> _build/stageBoot/inplace/package.conf.d' '-this-unit-id 
>> hsc2hs-0.68.10-inplace' '-this-package-name hsc2hs' '-package-id 
>> base-4.16.4.0' '-package-id containers-0.6.5.1' '-package-id 
>> directory-1.3.6.2' '-package-id filepath-1.4.2.2' '-package-id 
>> process-1.6.16.0' -i 
>> -i/home/cactus/prog/haskell/ghc/ghc.master/_build/stageBoot/utils/hsc2hs/build 
>> -i/home/cactus/prog/haskell/ghc/ghc.master/_build/stageBoot/utils/hsc2hs/build/hsc2hs/autogen 
>> -i/home/cactus/prog/haskell/ghc/ghc.master/utils/hsc2hs/src/ 
>> -I_build/stageBoot/utils/hsc2hs/build 
>> -I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/process-1.6.16.0/include 
>> -I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/unix-2.7.2.2/include 
>> -I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/time-1.11.1.1/include 
>> -I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/bytestring-0.11.4.0/include 
>> -I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/base-4.16.4.0/include 
>> -I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/ghc-bignum-1.2/include 
>> -I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/include -optP-include 
>> -optP_build/stageBoot/utils/hsc2hs/build/hsc2hs/autogen/cabal_macros.h 
>> -optP-DIN_GHC_TREE -outputdir _build/stageBoot/utils/hsc2hs/build 
>> -fdiagnostics-color=always -Wall -XHaskell2010 
>> -optc-I_build/stageBoot/utils/hsc2hs/build 
>> -optc-I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/process-1.6.16.0/include 
>> -optc-I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/unix-2.7.2.2/include 
>> -optc-I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/time-1.11.1.1/include 
>> -optc-I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/bytestring-0.11.4.0/include 
>> -optc-I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/base-4.16.4.0/include 
>> -optc-I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/ghc-bignum-1.2/include 
>> -optc-I/home/cactus/.ghcup/ghc/9.2.8/lib/ghc-9.2.8/include 
>> -optc-Wno-error=inline -c utils/hsc2hs/cbits/utils.c -o 
>> _build/stageBoot/utils/hsc2hs/build/c/cbits/utils.o -O -H32m
>> ===> Command failed with error code: 1
>> ghc: unrecognised flag: -this-package-name hsc2hs
>> 
>> 
>> I don't know where all those references to GHC 9.2.8 come from. I've run 
>> `configure` with GHC 9.10.1 on the $PATH and it correctly reports it as the 
>> bootstrapping version:
>>
>>   Bootstrapping using   : ghc
>>      which is version   : 9.10.1
>> 
>> 
>> What am I doing wrong?
>> 
>> Gergo
>> 
>
>

-- 

   .--= ULLA! =-----------------.
    \     http://gergo.erdi.hu   \
     `---= gergo at erdi.hu =-------'


More information about the ghc-devs mailing list