From 2e9f75983c02409bc60011a66f49f70ccc08a0b7 Mon Sep 17 00:00:00 2001 From: chenjw28 <792430652@qq.com> Date: Tue, 9 Jun 2026 10:42:25 +0800 Subject: [PATCH] x --- docker/Dockerfile | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 818390b..7a3a568 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -188,17 +188,28 @@ RUN set -ex && \ # roc::* 别名(PyTorch Caffe2Targets 直接引用 roc:: 命名空间的 hip 包名) for pair in \ "hipblas:rocblas" "hiprand:rocrand" "hipsolver:rocsolver" \ - "hipsparse:rocsparse" "hipfft:rocfft" "hipcub:rocprim" \ - "hipblaslt:hipblaslt" "hiprtc:hiprtc"; \ + "hipsparse:rocsparse" "hipfft:rocfft" "hipcub:rocprim"; \ do \ hip_pkg="${pair%%:*}"; roc_pkg="${pair#*:}"; \ cfg_dir="/opt/rocm/lib/cmake/${hip_pkg}"; \ if [ -f "${cfg_dir}/${hip_pkg}-config.cmake" ]; then \ if ! grep -q "roc::${hip_pkg}" "${cfg_dir}/${hip_pkg}-config.cmake" 2>/dev/null; then \ - printf 'if(TARGET hip::%s AND NOT TARGET roc::%s)\n add_library(roc::%s ALIAS hip::%s)\nendif()\n' \ - "${hip_pkg}" "${hip_pkg}" "${hip_pkg}" "${hip_pkg}" \ + printf 'if(TARGET roc::%s AND NOT TARGET roc::%s)\n add_library(roc::%s ALIAS roc::%s)\nendif()\n' \ + "${roc_pkg}" "${hip_pkg}" "${hip_pkg}" "${roc_pkg}" \ >> "${cfg_dir}/${hip_pkg}-config.cmake" && \ - echo "roc::${hip_pkg} alias → ${hip_pkg}-config.cmake."; \ + echo "roc::${hip_pkg} → roc::${roc_pkg}."; \ + fi; \ + fi; \ + done && \ + # hipblaslt / hiprtc:底层是 INTERFACE IMPORTED(非 ALIAS),roc:: 直接指 hip:: + for pkg in hipblaslt hiprtc; do \ + cfg_dir="/opt/rocm/lib/cmake/${pkg}"; \ + if [ -f "${cfg_dir}/${pkg}-config.cmake" ]; then \ + if ! grep -q "roc::${pkg}" "${cfg_dir}/${pkg}-config.cmake" 2>/dev/null; then \ + printf 'if(TARGET hip::%s AND NOT TARGET roc::%s)\n add_library(roc::%s ALIAS hip::%s)\nendif()\n' \ + "${pkg}" "${pkg}" "${pkg}" "${pkg}" \ + >> "${cfg_dir}/${pkg}-config.cmake" && \ + echo "roc::${pkg} → hip::${pkg}."; \ fi; \ fi; \ done && \