Ubuntu20.04 Docker编译TensorRT-LLM时CMake找不到ucx的解决求助
解决Ubuntu 20.04容器中编译TensorRT-LLM时找不到UCX的问题
问题原因
Ubuntu 20.04默认APT源不包含libucx-dev包,因此直接通过apt install无法安装,可通过以下几种方式解决:
方法1:从源码编译安装UCX(推荐,兼容性更好)
- 安装UCX编译依赖
apt update && apt install -y build-essential libnuma-dev libibverbs-dev librdmacm-dev cmake git
- 克隆UCX源码并切换到稳定版本
git clone https://github.com/openucx/ucx.git cd ucx git checkout v1.14.1 # 选择与TensorRT-LLM兼容的稳定版本,可根据项目文档调整
- 编译并安装UCX
mkdir build && cd build cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/ucx make -j$(nproc) make install
- 编译TensorRT-LLM时指定UCX路径
在TensorRT-LLM的编译目录中执行:
cmake .. -DUCX_ROOT=/usr/local/ucx
方法2:添加NVIDIA APT源安装预编译包
- 添加NVIDIA官方源
apt update && apt install -y gnupg2 curl curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg curl -s -L https://nvidia.github.io/libnvidia-container/ubuntu20.04/libnvidia-container.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
- 更新源并安装UCX
apt update apt install -y libucx-dev libucx0
安装完成后重新编译TensorRT-LLM即可,CMake会自动找到UCX配置文件。
方法3:禁用UCX依赖(如果不需要相关功能)
如果你的场景不需要UCX提供的通信功能,可以直接在编译TensorRT-LLM时禁用UCX:
cmake .. -DENABLE_UCX=OFF
内容的提问来源于stack exchange,提问作者Lionnel104
相关产品推荐
相关产品推荐

