报错:

./smart_car_camera ./smart_car_camera: error while loading shared libraries: libpython3.8.so.1.0: cannot open shared object file: No such file or directory

一、

解决方法:

安装 mlocate 工具,这样才能使用 updatedb 和 locate 命令来查找文件

sudo apt-get update
sudo apt-get install mlocate

2. 更新数据库并查找 libpython3.8.so.1.0

sudo updatedb
locate libpython3.8.so.1.0

我的路径

sudo updatedb locate libpython3.8.so.1.0 /home/orangepi/anaconda3/envs/ocr/lib/libpython3.8.so.1.0 /home/orangepi/anaconda3/pkgs/python-3.8.0-heaf0f07_5/lib/libpython3.8.so.1.0

3. 确认 libpython3.8.so.1.0 的路径
假设 locate 命令返回了 libpython3.8.so.1.0 的路径,例如 /usr/local/lib/python3.8/config-3.8-x86_64-linux-gnu/libpython3.8.so.1.0,需要确保这个路径已添加到 LD_LIBRARY_PATH 环境变量中

4. 设置 LD_LIBRARY_PATH

步骤 1: 添加库路径到 LD_LIBRARY_PATH
将找到的路径添加到 LD_LIBRARY_PATH 环境变量中:

export LD_LIBRARY_PATH=/usr/local/lib/python3.8/config-3.8-x86_64-linux-gnu:$LD_LIBRARY_PATH

找到的路径是 /home/orangepi/anaconda3/envs/ocr/lib 和 /home/orangepi/anaconda3/pkgs/python-3.8.0-heaf0f07_5/lib

export LD_LIBRARY_PATH=/home/orangepi/anaconda3/envs/ocr/lib:/home/orangepi/anaconda3/pkgs/python-3.8.0-heaf0f07_5/lib:$LD_LIBRARY_PATH

步骤 2: 检查 ldd 输出
确保 smart_car_camera 能够找到并加载 libpython3.8.so.1.0:

ldd ./smart_car_camera

步骤 3: 重新激活 Conda 环境
有时,环境变量的更改需要重新激活 Conda 环境才能生效。您可以尝试以下命令:

conda deactivate
conda activate ocr

步骤 4: 再次尝试运行 smart_car_camera
最后,再次尝试运行 smart_car_camera:

./smart_car_camera

持久化环境变量
如果希望这些环境变量的更改在每次登录时都生效,可以将 export 命令添加到你的 shell 配置文件中。对于 Bash,可以编辑 ~/.bashrc 文件:

echo 'export LD_LIBRARY_PATH=/home/orangepi/anaconda3/envs/ocr/lib:/home/orangepi/anaconda3/pkgs/python-3.8.0-heaf0f07_5/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部