Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the default solib dir to the rpath for shared libs with transitions. #14011

Closed
wants to merge 1 commit into from

Commits on Sep 18, 2021

  1. Add the default solib dir to the rpath for shared libs with transitions.

    When an executable has dynamically-linked dependencies that have transitions,
    shared libraries are looked up under rpaths like this:
        $ORIGIN/(../)*_solib_k8/../../../k8-fastbuild-ST-[0-9a-f]+/bin/_solib_k8
    
    Unless running under the execroot, the transitioned solib directory may not be
    available at all; the right files will be present under the default solib
    directory, so it should be on the rpath.
    
    Adding the default solib directory to the rpath may cause the wrong version of
    a shared library to be loaded, e.g. if it has been compiled in the default
    configuration. To prevent this, we also add the transition mnemonic to the
    mangled name of the library (adding the default solib last to the rpath won't
    really help, because it can legitimately be added first).
    quval committed Sep 18, 2021
    Configuration menu
    Copy the full SHA
    da24a52 View commit details
    Browse the repository at this point in the history