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

Add hint to set CONDA_OVERRIDE_<virtual package> when solving on a different platform than current? #483

Open
2 tasks done
JeanChristopheMorinPerso opened this issue Jul 8, 2024 · 1 comment
Labels
type::feature request for a new feature or capability

Comments

@JeanChristopheMorinPerso
Copy link

JeanChristopheMorinPerso commented Jul 8, 2024

Checklist

  • I added a descriptive title
  • I searched open requests and couldn't find a duplicate

What is the idea?

When trying to solve for a different platform than the current platform, the solve will likely fail unless virtual packages are overriden/set via environment variables.

For example, on osx-arm64:

$ CONDA_SUBDIR=linux-64 conda create -n test --dry-run 'snowflake-snowpark-python==1.18.0' --solver=libmamba
Channels:
 - defaults
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: failed

LibMambaUnsatisfiableError: Encountered problems while solving:
  - nothing provides __glibc >=2.17 needed by libstdcxx-ng-11.2.0-h1234567_0

Could not solve for environment specs
The following package could not be installed
└─ snowflake-snowpark-python >0.8.0  is not installable because it requires
   └─ snowflake-connector-python [>=2.7.11 |>=2.7.12 |...|>=3.6.0,<4.0.0 ], which requires
      └─ libstdcxx-ng >=11.2.0 , which requires
         └─ __glibc >=2.17 , which is missing on the system.

I think that a hint could be useful here. For example:

Could not solve for environment specs
The following package could not be installed
└─ snowflake-snowpark-python >0.8.0  is not installable because it requires
   └─ snowflake-connector-python [>=2.7.11 |>=2.7.12 |...|>=3.6.0,<4.0.0 ], which requires
      └─ libstdcxx-ng >=11.2.0 , which requires
         └─ __glibc >=2.17 , which is missing on the system.

You are trying to solve for the linux-64 subdir while your current subdir is X, you might need to override the virtual packages highlighted above. See https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-virtual.html#overriding-detected-packages for more details.

Would that be useful?

Why is this needed?

It's very common to solve for a different platform that your current platform and it's kind of hard to find how to fix the glibc thing without prior knowledge of virtual packages. A hint would help a lot.

What should happen?

No response

Additional Context

No response

@JeanChristopheMorinPerso JeanChristopheMorinPerso added the type::feature request for a new feature or capability label Jul 8, 2024
@jaimergp
Copy link
Contributor

jaimergp commented Jul 8, 2024

Thanks. I think this was brought up in #368 too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type::feature request for a new feature or capability
Projects
Status: 🆕 New
Development

No branches or pull requests

2 participants