前因:我在ubuntu上装了matlab,设置了LD_LIBRARY_PATH。后来使用supervisor时发现老是报
/usr/bin/python3: symbol lookup error: /usr/bin/python3: undefined symbol: XML_SetHashSalt
问题排查:
1、查看LD_LIBRARY_PATH的设置路径
echo $LD_LIBRARY_PATH
2、根据报错symbol lookup error: /usr/bin/python3,查看python3的所依赖的所有动态库的名字及其所在路径
ldd /usr/bin/python3
发现红框内libexpat.so.1的路径变成了matlab目录下的,这就是我们安装matlab更改LD_LIBRARY_PATH造成的结果
3、打开当时设置LD_LIBRARY_PATH的环境文件,我的是在/etc/profile(因人而异)。
加上红框里路径。
/lib:$HOME/lib:/lib/x86_64-linux-gnu:/usr/lib
因为上面设置的其实就是系统在调用链接库的时候,可以从/lib、/lib/x86_64-linux-gnu、$HOME/lib、/usr/lib、/usr/local/MATLAB/MATLAB_Runtime/v91/runtime/glnxa64/lib这些路径下查找
4、修改完后,记得用用source .....更新