【已解决】ImportError: ... undefined symbol: sqlite3_deserialize
报错:
ImportError: /home/bai/anaconda3/lib/python3.12/lib-dynload/_sqlite3.cpython-312-x86_64-linux-gnu.so: undefined symbol: sqlite3_deserialize
问题:
在能够正常运行代码时,尝试了更新torch,结果出现这样的报错:
ImportError: /home/bai/anaconda3/lib/python3.12/lib-dynload/_sqlite3.cpython-312-x86_64-linux-gnu.so: undefined symbol: sqlite3_deserialize
想要使用conda更新sqlite包,报错:
Downloading and Extracting Packages:
Preparing transaction: done
Verifying transaction: failed
RemoveError: ‘setuptools’ is a dependency of conda and cannot be removed from conda’s operating environment.
更新失败。尝试unintall,install sqlite包,报同样的错。
解决方案:
1.根据以下两个连接,自查动态链接是否出错
https://github.com/proxystore/taps/issues/151
https://askubuntu.com/questions/1475336/apt-get-not-working-correctly-because-of-python3-on-lunar/1475359#1475359
2.在尝试了以上方法后,仍未解决。以下是我的解决过程:
1)查看conda版本
conda search conda
更新conda到最新版本。此时最好指定版本,现在的指令添加了强制执行参数–force-reinstall ,-y表示不问是否同意直接安装。
conda install conda==25.5.1 --force-reinstall -y
2)更新conda后,不会出现’setuptools’的error了,现在重新安装sqlite
卸载原来的sqlite
conda uninstall sqlite
查看最新版本
conda search sqlite
安装最新版本,此时指定下载版本
conda install sqlite==3.50.2
检查是否成功
python3 -c “import sqlite3”
指令输入后没有结果,表示已经成功下载了。否则,会报错:ImportError: /home/bai/anaconda3/lib/python3.12/lib-dynload/_sqlite3.cpython-312-x86_64-linux-gnu.so: undefined symbol: sqlite3_deserialize
更多推荐
所有评论(0)