在Google Colab配置LD_PRELOAD加载libtcmalloc库遇错误求助
解决Google Colab中LD_PRELOAD加载libtcmalloc_minimal.so失败的问题
问题场景
执行代码时弹出错误:
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4.3.0' from LD_PRELOAD cannot be preloaded (cannot open shared object file)
执行的代码如下:
import os os.environ["LD_PRELOAD"] = "" !apt update !apt remove libtcmalloc-minimal4 !apt install libtcmalloc-minimal4 os.environ["LD_PRELOAD"] = "/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4.3.0" !echo $LD_PRELOAD !apt update
修复方案
- 问题核心:硬写死的
.so版本号(4.3.0)和Colab环境实际安装的库版本不匹配,导致找不到对应文件。 - 调整步骤:
- 清空
LD_PRELOAD环境变量,消除残留配置影响 - 重装库后,用软链接路径替代具体版本号——软链接会自动指向当前安装的最新版本
- 将
LD_PRELOAD设为软链接路径,保证兼容性
- 清空
修改后的可用代码:
import os os.environ["LD_PRELOAD"] = "" !apt update -y !apt remove -y libtcmalloc-minimal4 !apt install -y libtcmalloc-minimal4 # 使用软链接路径,避免硬编码版本号 os.environ["LD_PRELOAD"] = "/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4" !echo $LD_PRELOAD # 验证库是否正常加载 !ldd $(which python3) | grep tcmalloc
- 额外排查技巧:如果仍有问题,先查看库的实际安装路径和版本:
!ls -l /usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so*
根据输出的实际软链接或文件路径,调整LD_PRELOAD的值即可。
内容的提问来源于stack exchange,提问作者Satvik Hatulkar
相关产品推荐
相关产品推荐

