⚠ This page is served via a proxy. Original site: https://github.com
This service does not collect credentials or authentication data.
Skip to content

Conversation

@snps-behrens
Copy link
Collaborator

@snps-behrens snps-behrens commented Jan 21, 2026

Description

When a SIL Kit installation is built, the system default is used to name the lib-directory in the install hierarchy. On certain Linux distributions (Alma Linux, for instance) this default lib-directory is lib64 instead of lib. This results in the SIL Kit Demos and Utilities not being able to find libSilKit.so because their RPATH is hard-coded to use lib.

This PR proposes setting these RPATHs to match the naming scheme used when creating the SIL Kit installation (as defined by the GNUInstallDirs CMake module).

Developer checklist (address before review)

  • Changelog.md updated
  • Documentation updated
  • Rebase → commit history clean
  • Squash and merge → proper PR title

Signed-off-by: Marius Behrens <marius.behrens@synopsys.com>
Signed-off-by: Marius Behrens <marius.behrens@synopsys.com>
Signed-off-by: Marius Behrens <marius.behrens@synopsys.com>
Signed-off-by: Marius Behrens <marius.behrens@synopsys.com>
@snps-behrens snps-behrens self-assigned this Jan 21, 2026
@snps-behrens snps-behrens marked this pull request as ready for review January 21, 2026 14:38
@snps-behrens snps-behrens changed the title Set Demo and Utility RPATHs to match sytem defaults Set Demo and Utility RPATHs to match system defaults Jan 22, 2026
@VJanKraemer VJanKraemer requested review from VJanKraemer and removed request for MariusBgm January 22, 2026 08:27
Copy link
Contributor

@VJanKraemer VJanKraemer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me and congratulations on your first PR 🥳

Please squash the commits before merging and I think the PR title would also be a good, descriptive commit msg header. Any additional info should be in the msg body.

FOLDER "Utilities"
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/$<CONFIG>"
INSTALL_RPATH "$ORIGIN/../lib"
INSTALL_RPATH "$ORIGIN/../${CMAKE_INSTALL_LIBDIR}"
Copy link
Collaborator Author

@snps-behrens snps-behrens Jan 23, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a question that occurred to me looking at this again: Is there a reason the sil-kit-monitor does not have the trailing $ORIGIN that the other executables have? Or maybe the other way around; what is the reason that all the other executables are installed with a trailing $ORIGIN in the RPATH?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was before my time, so I don't know the exact reason, but the whole RPATH shenanigans are happening so we/users can take the SIL Kit Zip distributions and just copy them wherever on the target system and as long as the folder hierarchy of the zip is kept intact, everything works. The trailing $ORIGIN might be a remnant from earlier distribution models, but afaik it is not needed in the current distribution model. Can't be sure though to change that without breaking some users workflow.

To be frank I'd rather get rid of the whole rpath setting by default via CMakeLists.txt and put it specifically into the CMake cmdline/scripts that build the ZIP distributions. But that is a bigger discussion to be had, so for the moment I am just glad someone fixed it for non Debian derived Linux distributions :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants