JuliaPy / JuliaPy/PyCall.jl

libstdc++.so.6: version `GLIBCXX_3.4.30' not found

Open
#999 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
1.5k
Forks
186
PR merge metrics
No merged PRs in 30d

Description

I'm encountering an issue where:

1. A Conda package is built against libc 3.4.30 (in this case, python-casacore).
2. Conda ships with libc 3.4.30.
3. Running `ldd libcasa_casa.so` shows that casa is correctly linked to the Conda version of libc.
4. If I enter the Julia-managed conda (`~/.julia/3/bin/python`) and `import casacore.tables` it works fine.

BUT, when I `pyimport("casacore.tables")` I get the following error:


ImportError("/home/torrance/julia-1.7.3/bin/../lib/julia/libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /home/torrance/.julia/conda/3/lib/python3.9/site-packages/casacore/tables/../../../../libcasa_tables.so.7)")

It looks like to me that when run in the context of Julia, the `pyimport` statement wants to preferentially link against the Julia supplied libc, and not the Conda supplied libc. Moreover, the Julia supplied libc is at version 3.4.29.

Is this choice to link against the Julia libc a deliberate choice? If so, how to we mitigate this kind of issue happening each time Conda and Julia libc versions aren't aligned?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.