You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Version suffixes are nice, because they prevent us from loading an incompatible version of the library if it somehow happens to be present in LD_LIBRARY_PATH. (Note that LD_LIBRARY_PATH takes precedence over RUNPATH entries added during linking.)
It would be good to add version suffixes for libarrow_python* libraries as well -- for the same reason. We currently have a situation where (for hard to fix reasons) we end up with LD_LIBRARY_PATH that contains an old install of pyarrow. This breaks installing newer pyarrow into venvs -- even though the correct version of python scripts and lib.cpython-310-x86_64-linux-gnu.so is used, the latter picks up the old libarrow_python.so and fails to resolve symbols.
Component(s)
Python
The text was updated successfully, but these errors were encountered:
…ies (#44702)
### Rationale for this change
We are currently not setting library version suffixes for arrow python C++ libraries but we do so for libarrow C++.
### What changes are included in this PR?
Add the same logic that we use for libarrow.
### Are these changes tested?
I've validated manually that the suffixes are generated.
```
tree | grep libarrow_python
│ │ ├── libarrow_python.so -> libarrow_python.so.1900
│ │ ├── libarrow_python.so.1900 -> libarrow_python.so.1900.0.0
│ │ ├── libarrow_python.so.1900.0.0
│ │ ├── libarrow_python.pxd
│ ├── libarrow_python.so -> libarrow_python.so.1900
│ ├── libarrow_python.so.1900 -> libarrow_python.so.1900.0.0
│ ├── libarrow_python.so.1900.0.0
```
### Are there any user-facing changes?
We will generate so libraries with version suffixes.
* GitHub Issue: #44614
Authored-by: Raúl Cumplido <[email protected]>
Signed-off-by: Jacob Wujciak-Jens <[email protected]>
Describe the enhancement requested
pyarrow wheels ship a number of shared libraries. Most of these libraries have a version suffix, but the "python" libraries do not:
Version suffixes are nice, because they prevent us from loading an incompatible version of the library if it somehow happens to be present in LD_LIBRARY_PATH. (Note that LD_LIBRARY_PATH takes precedence over RUNPATH entries added during linking.)
It would be good to add version suffixes for libarrow_python* libraries as well -- for the same reason. We currently have a situation where (for hard to fix reasons) we end up with LD_LIBRARY_PATH that contains an old install of pyarrow. This breaks installing newer pyarrow into venvs -- even though the correct version of python scripts and lib.cpython-310-x86_64-linux-gnu.so is used, the latter picks up the old libarrow_python.so and fails to resolve symbols.
Component(s)
Python
The text was updated successfully, but these errors were encountered: