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

CMake: why are system packages ignored? #1137

Closed
tmplt opened this issue Oct 26, 2023 · 3 comments
Closed

CMake: why are system packages ignored? #1137

tmplt opened this issue Oct 26, 2023 · 3 comments
Labels
question Request for help or information

Comments

@tmplt
Copy link
Contributor

tmplt commented Oct 26, 2023

I am packaging v3.0.0, including Python bindings, for NixOS. During build of MuJoCo dependencies are fetched by commit revision and system packages are ignored. I find this unconventional. Is this a combination of end-user convenience and fetching API limitation, or are there dependencies which are found in off-shoot branches? That is, can I assume that each fetch is for a released dependency version, and thus set USE_SYSTEM_PACKAGE ON?

@tmplt tmplt added the question Request for help or information label Oct 26, 2023
@traversaro
Copy link
Contributor

You may be interested in #937 . Also some other patches we have on conda-forge can be interesting for you: https://github.com/conda-forge/mujoco-feedstock/tree/main/recipe .

@saran-t
Copy link
Member

saran-t commented Oct 26, 2023

@tmplt physics engines can be really sensitive to small changes, so to keep some control over the behaviour for each released version we strongly prefer to pin exact versions of all dependencies and statically link.

I realise that it's unconventional, but in the ideal world I'd prefer it if distros just package our prebuilt binaries as distributed over GitHub. Dependency symbols are all appropriately hidden so there shouldn't be much concern over conflicts with system packages. (It seems like this will be too much to ask for most distros though...)

EDIT: also in at least one case that I remember we had to modify dependency code so the system lib simply won't work

@tmplt
Copy link
Contributor Author

tmplt commented Oct 26, 2023

@saran-t thanks for the quick response. That makes sense. A lot of the dependencies seem numerical after all.

we had to modify dependency code

Thanks for the heads-up. I'll wrangle with the pins, then.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Request for help or information
Projects
None yet
Development

No branches or pull requests

3 participants