1、确定 libpython3.8.so.1.0位置,判断是否真的缺失
sudo updatedb
locate libpython3.8.so.1.0
如果是在conda虚拟环境中安装的话应该位于下面这个目录:
$CONDA_PREFIX/lib
其中$CONDA_PREFIX
是当前虚拟环境位置,在激活你的虚拟环境后可以通过echo $CONDA_PREFIX
查看,如果系统中真的缺失这个lib文件,去其他地方下载或者通过安装python38-dev等方式找回。
2、如果不缺失这个文件依旧报错
2.1、非conda虚拟环境的话,通过在.bashrc中设置LD_LIBRARY路径,确保找到lib
2.2、conda环境下永久解决方法
conda activate your_env
cd $CONDA_PREFIX
mkdir -p ./etc/conda/activate.d
mkdir -p ./etc/conda/deactivate.d
touch ./etc/conda/activate.d/env_vars.sh
touch ./etc/conda/deactivate.d/env_vars.sh
在activate.d/env_vars.sh中修改如下:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib
在deactivate.d/env_vars.sh修改如下:
# 保存原始的 LD_LIBRARY_PATH
ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
# 要删除的目录
DIRECTORY_TO_REMOVE="$CONDA_PREFIX/lib"
# 使用 grep 过滤掉要删除的目录项
NEW_LD_LIBRARY_PATH=$(echo $LD_LIBRARY_PATH | tr ':' '\n' | grep -v "$DIRECTORY>
# 设置新的 LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$NEW_LD_LIBRARY_PATH
# 如果需要输出变化,可以打印出来
#echo "Original LD_LIBRARY_PATH: $ORIGINAL_LD_LIBRARY_PATH"
#echo "New LD_LIBRARY_PATH: $LD_LIBRARY_PATH"
这样在激活环境时自动添加库路径到环境变量中。
如果后续安装legged_gym,还有什么numpy.float deprecated的问题,记得将rsl_rl切换到v1.0.2版本