[PR #2201] fix(linux): force Qt6 modules to link from bundled lib via rpath #2701

Open
opened 2026-10-14 21:04:07 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/amnezia-vpn/amnezia-client/pull/2201
Author: @Mitternacht822
Created: 2/9/2026
Status: 🔄 Open

Base: dev ← Head: bugfix/linux-bundle-libraries


📝 Commits (1)

  • 582f21b fix(linux): force Qt6 modules to link from bundled lib via rpath

📊 Changes

3 files changed (+49 additions, -0 deletions)

View changed files

📝 client/CMakeLists.txt (+32 -0)
📝 service/CMakeLists.txt (+7 -0)
📝 service/server/CMakeLists.txt (+10 -0)

📄 Description

On Linux, added explicit linking for Qt6::QuickTemplates2, Qt6::QmlModels, and Qt6::OpenGL (they were pulled in transitively via other Qt modules).
Forced these libraries to be stored in DT_NEEDED (by disabling --as-needed/push-state) to prevent the linker from discarding them as supposedly unused (which caused the loader started loading them from $ORIGIN/../lib).


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/amnezia-vpn/amnezia-client/pull/2201 **Author:** [@Mitternacht822](https://github.com/Mitternacht822) **Created:** 2/9/2026 **Status:** 🔄 Open **Base:** `dev` ← **Head:** `bugfix/linux-bundle-libraries` --- ### 📝 Commits (1) - [`582f21b`](https://github.com/amnezia-vpn/amnezia-client/commit/582f21b0b1e99a800034686f72cf85e3c48bb817) fix(linux): force Qt6 modules to link from bundled lib via rpath ### 📊 Changes **3 files changed** (+49 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `client/CMakeLists.txt` (+32 -0) 📝 `service/CMakeLists.txt` (+7 -0) 📝 `service/server/CMakeLists.txt` (+10 -0) </details> ### 📄 Description On Linux, added explicit linking for Qt6::QuickTemplates2, Qt6::QmlModels, and Qt6::OpenGL (they were pulled in transitively via other Qt modules). Forced these libraries to be stored in DT_NEEDED (by disabling --as-needed/push-state) to prevent the linker from discarding them as supposedly unused (which caused the loader started loading them from \$ORIGIN/../lib). --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
amnezia-vpn/amnezia-client#2701
No description provided.