Skip to content

Conversation

@SiskaPavel
Copy link
Collaborator

@SiskaPavel SiskaPavel commented Oct 1, 2025

Summary

Build telemetry library as shared (dynamic) instead of static.

Details

  • The telemetry library (telemetry and appFs) was previously built and linked as static archives.
  • This caused One Definition Rule (ODR) violations during RPM builds on newer g++ versions, because multiple translation units ended up with duplicate (and slightly diverging) definitions of FileOps, File, and related classes.
  • By switching to a shared library (.so), there is only a single definition of each symbol at runtime, preventing ODR conflicts.

✅ Checks

  • Relevant documentation was updated (if needed)
  • CI pipeline passes (build, tests, lint, static analysis)
  • New code follows clang-tidy rules
  • The change is clearly related to a specific issue / requirement
  • Documentation (e.g. Doxygen) is updated if needed
  • The PR is rebased on the latest master
  • No unrelated changes are included

@SiskaPavel SiskaPavel self-assigned this Oct 1, 2025
@SiskaPavel SiskaPavel requested a review from hynekkar October 1, 2025 08:13
@SiskaPavel SiskaPavel force-pushed the telemetry-linking-as-shared branch from b9a272d to b935613 Compare October 1, 2025 08:22
@SiskaPavel SiskaPavel merged commit 036e373 into master Oct 1, 2025
8 checks passed
@SiskaPavel SiskaPavel deleted the telemetry-linking-as-shared branch October 1, 2025 08:31
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