問題タブ [ghc-pkg]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
macos - cabal がインストールしたパッケージが見つかりません
私は途方に暮れています。OS X 10.8.2 を使用しています。
私が見つけることができる唯一の参照はこれです:
4.1 パッケージをインストールしましたが、パッケージが見つかりません`
これは、パッケージをグローバルにインストールし、以前のパッケージがローカルにインストールされている場合に発生します。cabal-install
はデフォルトでローカルにインストールされ、「runhaskell Setup」コマンド
はデフォルトでグローバルにインストールされることに注意してください。
cabal はデフォルトでローカルにインストールするように設定されています。私はこれを変更していません。Haskell はグローバルにインストールされました。
×がおかしい…
うーん
確認ghc-pkg list
しましたがありません。それで、それがuser
パッケージであるかどうかを確認してください。
ここにフラグがありませんか?私はまだそれを構築する必要がありますか?
haskell - cabal が特定のパッケージをインストールした理由を見つける方法はありますか?
cabal-install でパッケージをインストールすると、すべての依存関係も間接的にインストールされます。.cabal/packages
直接インストールしなかったフォルダー内の特定のパッケージが与えられた場合、それが依存していた他のパッケージを見つける方法はありますか?
macos - Haskell 環境ホース後再インストール
最近、Mac OS X を Mavericks にアップデートした後、Haskell 環境を回復できないと思ったので、Haskell 環境を再インストールしました。
を実行するたびにcabal install cabal-install
、次のエラーが発生します。
グーグルで調べた後、これを見つけました:http://www.haskell.org/platform/ghc-clang-wrapper
Haskellのclangをラップするために実行しましたが、上記のエラーは引き続き発生します。
ランニングghc-pkg check
なぜ私の Haskell 環境は驚くほど壊れているのですか? どうすれば修正できますか?
haskell - cabal repl 経由で呼び出されたときに、追加のパッケージを ghci にロードする簡単な方法はありますか?
cabal repl
ライブラリのデバッグには非常に便利ですが、ghci は cabal パッケージの依存関係ではないすべてのパッケージを非表示にします。これは確かに にとっては良いことですがcabal build
、repl
簡単なテストのために無関係なパッケージから何かをロードできないことを意味します。
を発行することで任意のパッケージにアクセスできますが:set -package
、これにより、作業中のパッケージからすべてのモジュールがアンロードされ、cabal repl
.
インストールしたパッケージを単純にロードする良い方法は何ですか?
haskell - ローカルでビルドされた ghc を使用して debian wheezy で haskell プラットフォーム 2014.2.0.0 をビルドする
Haskell プラットフォームの最新リリースを Debian wheezy にインストールしたいと考えています。実行することで
バージョン 7.4.1 (2012 年にリリース)を入手ghc
しましたが、現在のバージョンは 7.8.3 です。
それで、現在のghc
バージョンのソースをダウンロードしてビルドしました。すべてうまくいき、実行できるようになりghc
ました。次に、ここから Haskell プラットフォームのソース ディストリビューションをダウンロードしました。README
ファイルの中に手順が記載されています。
建物の要件
ソース リポジトリまたは ソース tarballからのプラットフォーム ビルド ファイルが必要です。ビルド手順はどちらも同じです。
コンパイルしている OS に一致する GHC bindist が必要です。また、プラットフォームで使用されている GHC バージョン (現在は 7.8.3) と一致する必要があります。これは以下から入手できます: http://www.haskell.org/ghc/download_ghc_7_8_3
私は実際にはこれを使用したくありません。私が読んだghcドキュメントghc
で、私が作成したばかりのものを使用したいと思います:
注: libc のバージョンが古すぎる場合、これらのバインドリストのバイナリから「浮動小数点例外」などのエラーが発生します。libc をアップグレードするか (必要な最小バージョンが何であるかはわかりません)、代わりにディストリビューション用にビルドされたバイナリ パッケージを使用する必要があります。
したがって、確実にするために、私は自分のビルドを使用することを好みます。しかし、README
付属の はそのhaskell-platform-2014.2.0.0
ようなオプションについて何も述べていません。提供される唯一のオプションは、次を実行することです。
./platform.sh $PATH_TO_GHC_BINDIST_TARBALL
ghc
ローカルでビルドしたバイナリを使用して Haskell プラットフォームをビルドする方法はありますか?
haskell - ghc はライブラリのパスをどのように解決しますか?
nixpkgs で haskell を使い始めています。私が読んだnixpkgsの公式ガイドから:
GHC は、インストールされているすべてのライブラリを独自の lib ディレクトリ内で見つけることを期待しています。
述べられているように、ghcはすべてのライブラリを同じパスにインストールする必要があると言っているようです。
ghc は、ghc-pkg で構成されたパッケージ データベースを参照することで、ライブラリのパスを見つけることができたと思いました。この場合、ライブラリをファイルシステムの異なるディレクトリに配置し、これらの異なるパスを解決するように package-db を構成することが可能です。しかし、これは上記のリンクで述べたことと矛盾するので、何が得られないのでしょうか?
ご回答ありがとうございます。
haskell - テストおよびベンチマーク スイートで GHC パッケージ データベースにアクセスする
GHC API を使用してモジュールを Core にコンパイルするテスト スイートとベンチマーク スイートがあるので、Core を「手で」書く必要はありません。
私はstack
この時点で主に使用してGHC_PACKAGE_PATH
おり、テスト スイート ( stack test
) の環境変数にアクセスして、GHC API にフィードできるパッケージ データベースを見つけることができます。base
特定のデータベースを気にするほどではないことに注意してください.egからのモジュールを利用可能にし、GHCの互換バージョン(eg.)でコンパイルしたいだけですGHC.Paths.ghc
。
これまでのところすべて正常に動作し、テストは緑色です。ここで、ベンチマーク スイート ( stack bench
)に対して同じことを行うと、GHC_PACKAGE_PATH
まったく存在しないように見えます。
簡単に言えば、プログラムが構築されたGHCパッケージデータベースへのパスを取得する信頼できる方法は何ですか? いじることSetup.hs
で、自分がなりたい場所にたどり着くことができると思います。
編集:ここで遊んでみましょう:https : //github.com/sgraf812/ghc-package-path
stack test
の値を出力しますがGHC_PACKAGE_PATH
、出力しstack bench
ません。この質問に対する答えは、いずれの場合でも適切なパッケージ データベースへのパスが出力されるようにする必要があります。