Re: Installation layout of the PyPy 3.8 Fedora package
Miro Hrončok <[email protected]> Thu, 27 Jan 2022 16:03:08 +0100
| Newsgroups | gmane.comp.python.pypy |
|---|---|
| Message-ID | <[email protected]> |
On 27. 01. 22 15:54, Matti Picus wrote: > > On 27/1/22 14:59, Miro Hrončok wrote: >> ... >> The only remaining thing is libpypy3.9-c.so in /usr/bin. >> I'd like to move it to /usr/lib64 where it will be found. >> >> Technically, Fedora forbids an unversioned so file there. >> >> https://docs.fedoraproject.org/en-US/packaging-guidelines/#_downstream_so_name_versioning >> >> >> CPython has libpython3.9.so.1.0. >> >> $ objdump -p /usr/lib64/libpython3.9.so.1.0 | grep 'SONAME' >> SONAME libpython3.9.so.1.0 >> >> Do you think PyPy can do this as well? Or is there a reason not to? >> >> Thanks! > > > (Previously replied privately, sorry about that). > > > I tried moving the so to /usr/lib64/libpypy3-c.so.1.0 and adding a symlink to > /usr/lib64/libpypy3-c.so. > > After running ldconfig to pick up the new file, I could run pypy3-c, and it > seems venv and virtualenv do not complain about missing the shared object. > > > So it seems it JustWorks. In order to be fully SONAME versioned, the file also needs to set SONAME in it. It seems it JustWorks as well: # mv /usr/bin/libpypy3.9-c.so /usr/lib64/libpypy3.9-c.so.1.0 # ln -s libpypy3.9-c.so.1.0 /usr/lib64/libpypy3.9-c.so # patchelf --set-soname libpypy3.9-c.so.1.0 /usr/lib64/libpypy3.9-c.so.1.0 # objdump -p /usr/lib64/libpypy3.9-c.so.1.0 | grep 'SONAME' SONAME libpypy3.9-c.so.1.0 # pypy3 Python 3.9.10 (5bee8a8dce85, Jan 27 2022, 11:29:45)... Awesome! -- Miro Hrončok -- Phone: +420777974800 IRC: mhroncok _______________________________________________ pypy-dev mailing list [email protected] https://mail.python.org/mailman/listinfo/pypy-dev