-
Notifications
You must be signed in to change notification settings - Fork 75
doctest: Missing file: /nix/store/g1w99d0b9628lvwbyljm7hgrlnw5zc0n-ghc-9.6.2/lib/ghc-9.6.2/lib/settings #466
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Hmm, I think this message is originating from:
I think the PATH is irrelevant for this.
things should work. Should this be a nixpkgs issue instead? Have you tried to use |
Yes. The cause is that a non-existent libdir is passed to a GHC library function, e.g. runGhc.
Yes, I may be mistaken regarding which GHC is used by If this isn't even possible then I think this is a bug in the design of
All nixpkgs is doing is providing a GHC version that I have previously used to build both
Yes, I tried it and it gives me an error when running
|
So your I have more to say, but switching device, so give me a second. |
So continuing here, firstly, what version of GHC are you using? Only GHC 9.8 and later include ABI hashes in the package IDs of boot libraries. If you are using anything older than that then I think you are much more likely to run into issues. |
But even with a recent version of GHC, what I imagine could happen is that some nixpkgs dependency of GHC changes, resulting in a different store path, while the GHC ABI hash does not change. If that happens, then I think you're in trouble. I'm not really into Nix and I am not sure how others deal with this. I think @soenkehahn has a lot of relevant experience here. Maybe he is willing to chime in. Maybe Other than that, this is what I can think of:
|
As for running doctest, please make sure that it works with a minimal example that does not use CPP. If you then wanna run it for a cabal package you have these options:
Please read the README for how to do this. |
Correct. Only GHC and cabal-install are provided by nixpkgs; everything else I do by running cabal-related CLI commands.
I have no directory
I'm using GHC 9.6.2
I'm not sure what this means, but the issue here is very clear to me: when |
What I'm saying is, if you can, upgrade to a more recent version of GHC first (at least 9.8.*). If you don't do that, you have to be prepared to run into arbitrary ABI issues if you rebuild If you can't upgrade then I recommend to remove your cabal store after every rebuild of ghc. This will both help with ABI issues and with your If you can upgrade, you should not run into ABI issues and the |
For completeness: With GHC 9.8+
Edit: Just to be clear, all packages, including With GHC 9.6.*
|
Uh oh!
There was an error while loading. Please reload this page.
I think the problem is that
ghc-paths
was compiled with one version of GHC in the PATH and now that version of GHC is no longer present where it was before. This happens because ghc-paths' path to ghc is fixed at compile-time of ghc-paths.This is perhaps a duplicate of #40. But that issue was closed, pointing to #42 for the reason, in which a comment mentions a workaround that I can't find. What's the workaround?
The text was updated successfully, but these errors were encountered: