AnyPS5/core/libs/nid
alfalfa-star 1d9d5ab491 fix(libs): keep a $ORIGIN runpath in the patched prx libraries
The NID patcher rebuilds .dynstr keeping only the DT_NEEDED and
DT_SONAME strings, so DT_RUNPATH kept a stale offset and the patched
libraries shipped with an empty runpath. A library could then load only
those sibling prx that the executable already loads itself:
libSceVideoOut.prx needs libSceKeyboard.prx, which a title that does
not import libSceKeyboard never loads, so it fails at startup.

The patcher now keeps DT_RPATH and DT_RUNPATH strings, and the prx
libraries are linked with a $ORIGIN runpath instead of the build
directory, so they find each other wherever they are copied.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 20:20:14 +02:00
..
include/nid fix(libs): keep a $ORIGIN runpath in the patched prx libraries 2026-10-05 20:20:14 +02:00
src fix(libs): keep a $ORIGIN runpath in the patched prx libraries 2026-10-05 20:20:14 +02:00
tests fix(libs): keep a $ORIGIN runpath in the patched prx libraries 2026-10-05 20:20:14 +02:00