Skip to content

fix: multimedia 符号表移除两个 stdc++ 树符号 - #13

Merged
lzwind merged 1 commit into
deepin-community:develop/qt6.12from
pengfeixx:fix/sw64-symbols
Oct 30, 2026
Merged

lzwind merged 1 commit into
deepin-community:develop/qt6.12from
pengfeixx:fix/sw64-symbols

Conversation

@pengfeixx

Copy link
Copy Markdown

fix: drop two stdc++ tree symbols from multimedia symbols

  1. sw64 build fails at dh_makeshlibs: two std::_Rb_tree internal instantiations
    (_M_get_insert_hint_unique_pos on the QRhi/DmaBufEglContext map and
    equal_range on the QUrl/SampleRate map) are not exported by the sw_64
    toolchain
  2. Follow the 6.8 packaging precedent: the deepin 6.8
    libqt6multimedia6.symbols tracked no std::_Rb_tree @Qt_6_PRIVATE_API
    symbols at all, and built fine on all five architectures
  3. They are std::map implementation internals, not Qt ABI surface; on arches
    whose toolchains do emit them, unlisted symbols only produce non-fatal
    dpkg-gensymbols warnings

Log: Fix qt6-multimedia sw64 packaging failure by dropping two
std::_Rb_tree private-API symbols inherited from the salsa 6.11 symbols
template

Influence:

  1. Rebuild qt6-multimedia on sw64 and verify dh_makeshlibs passes
  2. Confirm the remaining symbols still match on amd64/arm64/loong64/mips64el
  3. If another arch trips on the remaining four same-class symbols, drop the
    whole class to fully return to the 6.8 baseline

fix: multimedia 符号表移除两个 stdc++ 树符号

  1. sw64 构建在 dh_makeshlibs 失败:两个 std::_Rb_tree 内部实例化符号
    (QRhi/DmaBufEglContext map 的 _M_get_insert_hint_unique_pos 与
    QUrl/SampleRate map 的 equal_range)在 sw_64 工具链下未导出
  2. 参考 6.8 打包先例:deepin 6.8 的 libqt6multimedia6.symbols 本就不收录
    任何 std::_Rb_tree @Qt_6_PRIVATE_API 符号,五架构构建均通过
  3. 这类符号是 std::map 实现内部,不属于 Qt ABI 表面;在会导出它们的架构上,
    未列出的符号仅产生非致命的 dpkg-gensymbols 警告

Log: 修复 qt6-multimedia 在 sw64 上的打包失败,移除两个从 salsa 6.11
符号模板带入的 std::_Rb_tree 私有 API 符号

Influence:

  1. 在 sw64 上重编 qt6-multimedia,确认 dh_makeshlibs 通过
  2. 确认 amd64/arm64/loong64/mips64el 上其余符号仍完全匹配
  3. 若其他架构再报同类剩余四个符号,整类删除以完全回归 6.8 基线

PMS: TASK-396869

1. sw64 build fails at dh_makeshlibs: two std::_Rb_tree internal instantiations
   (_M_get_insert_hint_unique_pos on the QRhi/DmaBufEglContext map and
   equal_range on the QUrl/SampleRate map) are not exported by the sw_64
   toolchain
2. Follow the 6.8 packaging precedent: the deepin 6.8
   libqt6multimedia6.symbols tracked no std::_Rb_tree @Qt_6_PRIVATE_API
   symbols at all, and built fine on all five architectures
3. They are std::map implementation internals, not Qt ABI surface; on arches
   whose toolchains do emit them, unlisted symbols only produce non-fatal
   dpkg-gensymbols warnings

Log: Fix qt6-multimedia sw64 packaging failure by dropping two
std::_Rb_tree private-API symbols inherited from the salsa 6.11 symbols
template

Influence:
1. Rebuild qt6-multimedia on sw64 and verify dh_makeshlibs passes
2. Confirm the remaining symbols still match on amd64/arm64/loong64/mips64el
3. If another arch trips on the remaining four same-class symbols, drop the
   whole class to fully return to the 6.8 baseline

fix: multimedia 符号表移除两个 stdc++ 树符号

1. sw64 构建在 dh_makeshlibs 失败:两个 std::_Rb_tree 内部实例化符号
   (QRhi/DmaBufEglContext map 的 _M_get_insert_hint_unique_pos 与
   QUrl/SampleRate map 的 equal_range)在 sw_64 工具链下未导出
2. 参考 6.8 打包先例:deepin 6.8 的 libqt6multimedia6.symbols 本就不收录
   任何 std::_Rb_tree @Qt_6_PRIVATE_API 符号,五架构构建均通过
3. 这类符号是 std::map 实现内部,不属于 Qt ABI 表面;在会导出它们的架构上,
   未列出的符号仅产生非致命的 dpkg-gensymbols 警告

Log: 修复 qt6-multimedia 在 sw64 上的打包失败,移除两个从 salsa 6.11
符号模板带入的 std::_Rb_tree 私有 API 符号

Influence:
1. 在 sw64 上重编 qt6-multimedia,确认 dh_makeshlibs 通过
2. 确认 amd64/arm64/loong64/mips64el 上其余符号仍完全匹配
3. 若其他架构再报同类剩余四个符号,整类删除以完全回归 6.8 基线

PMS: TASK-396869
@deepin-ci-robot

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: lzwind
Once this PR has been reviewed and has the lgtm label, please assign liujianqiang-niu for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@lzwind
lzwind merged commit aa5359f into deepin-community:develop/qt6.12 Oct 30, 2026
1 of 4 checks passed
@pengfeixx
pengfeixx deleted the fix/sw64-symbols branch October 30, 2026 06:08
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