使用服务器时,我们往往没有root权限,有些软件需要libuv、libpng等库,但在/usr/local/lib下没有权限,无法使用和安装lib库,产生如下报错,现总结非root用户安装lib库的几种方法:
error while loading shared libraries: libuv.so.1: cannot open shared object file: No such file or directory
方法一:
可以使用conda安装libuv和libpng等库,再设置动态和静态链接库位置即可
conda install -c conda-forge libuv #安装libuv
/home/username/anaconda2/lib/libuv.so #查看libuv位置
#libuv.so libuv.so.1.0.0 libuv.so.1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/username/anaconda2/lib #设置动态链接库的路径
export LIBRARY_PATH=$LIBRARY_PATH:/home/username/anaconda2/lib #设置静态库的路径
方法二:
一些情况由于版本问题,安装不到想要的版本,比如libpng12.so.0,使用conda安装libpng后lib库为libpng16.so.0。
这时可以网上直接搜索libpng12.so.0安装包下载到/home/username/anaconda2/lib/下即可
#安装包地址:https://pan.baidu.com/s/1EVCvPZhRjQm7LPw7Gkr-Xg
#下载至/home/username/anaconda2/lib/下
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/username/anaconda2/lib #设置动态链接库的路径
export LIBRARY_PATH=$LIBRARY_PATH:/home/username/anaconda2/lib #设置静态库的路径
参考链接:
https://zhuanlan.zhihu.com/p/431678182
https://www.cnblogs.com/sinferwu/p/12545834.html