Use of Linux extension "so" on MacOs instead of "dylib" when loading PyTorch
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.6k
- Forks
- 155
- Avg merge
- 9h 42m
- Merged PRs (30d)
- 36
Description
I'm getting a strange error on my MacOS M2 laptop trying to import the PyTorch library from Python code running on a JVM (GraalPy 3.11.7 Oracle GraalVM Native 24.1.0 on openjdk 23 2024-09-17)::
org.graalvm.polyglot.PolyglotException: OSError: dlopen( ... ffx_venv/lib/python3.11/site-packages/torch/lib/libtorch_global_deps.so, 0x000A): tried: ... (no such file)
The library is in the virtual environment (after using GraalPy pip to install torch), but on MacOS the extension is "dylib" instead of "so". The correct file is available here: ffx_venv/lib/python3.11/site-packages/torch/lib/libtorch_global_deps.dylib
Any ideas why the Linux ".so" extension is being used instead of ".dylib"?
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the PyTorch import from Python running on the JVM with GraalPy 3.11.7 on the MacOS M2 environment described. Compare the attempted torch/lib/libtorch_global_deps.so load with the available libtorch_global_deps.dylib and trace the platform-specific loading path; done means the import selects the MacOS library without the reported OSError.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java, macos, python, pytorch
- Domain
- backend, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100