Skip to content
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

Cannot start new haskell project due to missing system-cxx-std-lib #2280

Open
tathougies opened this issue Nov 12, 2024 · 0 comments
Open

Cannot start new haskell project due to missing system-cxx-std-lib #2280

tathougies opened this issue Nov 12, 2024 · 0 comments
Labels
bug Something isn't working

Comments

@tathougies
Copy link

Describe the bug

I started a new haskell.nix project. Previously, I've started many projects using haskell.nix. I set everything up as usual, but when I try to run cabal v2-build for my project (which depends on text), I get the following error:

Error: [Cabal-7107]
Could not resolve dependencies:
[__0] trying: coopt-types-0.0.0 (user goal)
[__1] trying: text-2.1.2 (dependency of coopt-types)
[__2] trying: text:-pure-haskell
[__3] trying: text:+simdutf
[__4] unknown package: system-cxx-std-lib (dependency of text -pure-haskell +simdutf)
[__4] fail (backjumping, conflict set: system-cxx-std-lib, text, text:pure-haskell, text:simdutf)
After searching the rest of the dependency tree exhaustively, these were the goals I've had most trouble fulfilling: base, text, bytestring, template-haskell, text:simdutf, text:pure-haskell, system-cxx-std-lib, coopt-types
Try running with --minimize-conflict-set to improve the error message.

A clear and concise description of what the bug is, including:

  • Build system: x86_64-linux
  • GHC version: 9.10.1
  • Haskell.nix version (or commit) used: haskellNix: github:input-output-hk/haskell.nix/54ddc77cd29c19779489d8f7fae14d70e90d8c68

Steps To Reproduce

flake.nix:

{
  description = "Compiler toolkit for Haskell";
  inputs.haskellNix.url = "github:input-output-hk/haskell.nix";
  inputs.nixpkgs.follows = "haskellNix/nixpkgs-unstable";
  inputs.flake-utils.url = "github:numtide/flake-utils";

  outputs = { self, nixpkgs, flake-utils, haskellNix }:
    flake-utils.lib.eachSystem [ "x86_64-linux" "x86_64-darwin" ] (system:
    let
      overlays = [ haskellNix.overlay
        (final: prev: {
          # This overlay adds our project to pkgs
          cooptProject =
            final.haskell-nix.project' {
              src = ./.;
              compiler-nix-name = "ghc9101";
              # This is used by `nix develop .` to open a shell for use with
              # `cabal`, `hlint` and `haskell-language-server`
              shell.tools = {
                cabal = {};
                #                hlint = {};
                hpack = {};
                haskell-language-server = {};
              };
              # Non-Haskell shell tools go here
              shell.buildInputs = with pkgs; [
                nixpkgs-fmt
              ];
              # This adds `js-unknown-ghcjs-cabal` to the shell.
              # shell.crossPlatforms = p: [p.ghcjs];
            };
        })
      ];
      pkgs = import nixpkgs { inherit system overlays; inherit (haskellNix) config; };
      flake = pkgs.cooptProject.flake {
        # This adds support for `nix build .#js-unknown-ghcjs:hello:exe:hello`
        # crossPlatforms = p: [p.ghcjs];
      };
    in flake // {
      # Built by `nix build .`
      packages.default = flake.packages."coopt:lib:coopt";
    });
}

cabal.project:

packages:
        coopt-types

coopt-types/coopt-types.cabal:

cabal-version: 1.12

-- This file has been generated from package.yaml by hpack version 0.37.0.
--
-- see: https://github.com/sol/hpack

name:           coopt-types
version:        0.0.0
build-type:     Simple

library
  exposed-modules:
      Coopt.Types
  other-modules:
      Paths_coopt_types
  build-depends:
      base
    , fingertree
    , text
  default-language: Haskell2010

To reproduce:

run nix develop, and then try to run cabal v2-build coopt-types

Expected behavior

It should resolve packages and compile

@tathougies tathougies added the bug Something isn't working label Nov 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant