Ubuntu22.04下安装R版PyTorch CPU时liblantern.so未定义符号错误求助
解决R版PyTorch在Ubuntu 22.04的未定义符号错误
这个错误是因为预编译的liblantern.so和你的系统C++ ABI(应用二进制接口)不兼容导致的——Ubuntu 22.04默认使用的gcc版本较新,而下载的预编译包可能基于旧版gcc编译,两者ABI不匹配。可以通过以下步骤解决:
清理现有Torch安装
- 在R中执行卸载命令:
remove.packages("torch") - 删除残留的依赖文件(如果存在):
rm -rf /R/x86_64-pc-linux-gnu-library/4.2/torch
- 在R中执行卸载命令:
安装系统编译依赖
在终端执行以下命令安装必要的编译工具和库:sudo apt update && sudo apt install build-essential cmake libssl-dev libcurl4-openssl-dev libxml2-dev从源码重新安装R版Torch
- 启动R,设置环境变量强制从源码构建:
Sys.setenv(TORCH_BUILD_FROM_SOURCE = "1") - 重新安装Torch包:
这个过程会自动从源码编译适配Ubuntu 22.04的install.packages("torch")libtorch和liblantern,耗时会比预编译安装长一些。
- 启动R,设置环境变量强制从源码构建:
验证安装
安装完成后,在R中加载包测试:library(torch) torch_tensor(1:5)如果能正常输出张量,说明问题解决。
内容的提问来源于stack exchange,提问作者Ai4l2s
相关产品推荐
相关产品推荐

