Skip to content

Running ldd on binaries isn't finding unstable-external_project-built library dependencies at runtime. #12970

@gabeblack

Description

@gabeblack

If a binary/library adds a dependency to a library built via unstable-external_project, it is able to find the headers and link against it, but the binary (in the build tree) instead looks for the library in the default system paths at runtime. The build-time rpath doesn't appear to point to the path where the external_project library actually resides.

This is different behavior than if the same binary/library where to instead use a subproject built using the normal meson shared library constructs. The binary produced in that case will set the rpath to that shared library in the build tree and use it at runtime.

Are unstable-external_project-built libraries supposed to differ in this way?

I just wanted to double-check and make sure I didn't need to do something extra to get the external_project libraries to cause rpath to be set (or similar) like a normal subproject library dependency would.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions