Cabal and GHC: the big picture

Oleg Grenrus oleg.grenrus at iki.fi
Tue Jul 16 11:51:07 UTC 2024


package.db directory has only .conf files, but those conf files point to 
directories with interface and object files.
I think every tool puts the interface and object files next to .conf files.

./package.db is the "index",

./aeson-2.2.3.0-3b4881079a148ac154e9112c43bd71f61140bdb9e78660803e826af798de2108
./aeson-2.2.3.0-9bfa3c3833e85d9e62afa4f60b2820c47e8c3382991299ab624dedb682bb786a
...

is the data.

Also global package db is somewhat similar with index at e.g. 
/opt/ghcup/.ghcup/ghc/9.10.1/lib/ghc-9.10.1/lib/package.conf.d and data 
at /opt/ghcup/.ghcup/ghc/9.10.1/lib/ghc-9.10.1/lib/x86_64-linux-ghc-9.10.1

- Oleg

On 16.7.2024 14.43, Tom Ellis wrote:
> Thanks Oleg.
>
> On Tue, Jul 16, 2024 at 02:35:50PM +0300, Oleg Grenrus wrote:
>>> This .cabal/store is not a package database.
>> .cabal/store/<ghc> **is** an ordinary package database.
> The package database is the thing that contains the .conf files, isn't
> it?  So perhaps you mean .cabal/store/<ghc>/package.db is an ordinary
> package database?  If not it would be good if we can establish
> precisely what is meant by "package database" and then clarify the
> document.
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs


More information about the ghc-devs mailing list