私は、nixpkgsでhaskellを使い始めました。 the official guide to nixpkgsから私は以下を読んでいます:ghcはライブラリのパスをどのように解決しますか?
GHCは、インストールされているすべてのライブラリを、独自のlibディレクトリ内に見つけようとします。それが記載されているとおり
GHCが同じパスにインストールされるすべてのライブラリを必要と言っているようです。
ghcはghc-pkgによって設定されたパッケージデータベースを見て、ライブラリのパスを見つけることができたと思いました。 この場合、ファイルシステムの異なる ディレクトリの下にライブラリを配置し、これらの異なるパスを解決するためにpackage-dbを設定することが可能でなければなりません。 しかし、これは上記のリンクで言われたことと矛盾するので、私は何を得ていないのですか?
お返事ありがとうございます。
基本的に私の理解は正しかったです。私は上記のリンクで何を言ったのか誤解しましたか? –
はい - あなたの理解は正しいです。その段落は、パッケージデータベースの簡略化された表示を示し、その目的は、次の段落で提示される 'ghcWithPackages'関数の必要性を動機づけることです。さらに、「GHCのストアパスは一度作成すると変更できません」という文は技術的には真実ではありませんが、nixはシステムパッケージdbを変更しません。 「機能的」なので、system-dbの上に別のパッケージdbを作成します。その意味では、この文は真です。 – ErikR
今私は理解していると思う、ありがとう。 –