Ubuntu 22.04.1 LTS安装phantomjs-2.1.1失败,执行phantomjs -v报错求助
问题描述
在Ubuntu 22.04.1 LTS系统中按照教程操作后,执行命令phantomjs -v时出现以下错误:
Auto configuration failed 140111765546944:error:25066067:DSO support routines:DLFCN_LOAD:could not load the shared library:dso_dlfcn.c:185:filename(libproviders.so): libproviders.so: cannot open shared object file: No such file or directory 140111765546944:error:25070067:DSO support routines:DSO_load:could not load the shared library:dso_lib.c:244: 140111765546944:error:0E07506E:configuration file routines:MODULE_LOAD_DSO:error loading dso:conf_mod.c:285:module=providers, path=providers 140111765546944:error:0E076071:configuration file routines:MODULE_RUN:unknown module name:conf_mod.c:222:module=providers
请问这是什么问题?
问题分析与解决
这是PhantomJS依赖的OpenSSL组件在Ubuntu 22.04中存在路径兼容问题,系统找不到libproviders.so共享库导致的。
解决方法有两种:
方法一:创建软链接
- 先查找
libproviders.so的实际路径:find /usr/lib -name libproviders.so - 一般会返回类似
/usr/lib/x86_64-linux-gnu/openssl-3.0/libproviders.so的路径,执行以下命令创建软链接:sudo ln -s /usr/lib/x86_64-linux-gnu/openssl-3.0/libproviders.so /usr/lib/libproviders.so - 完成后重新执行
phantomjs -v验证。
方法二:调整环境变量
- 临时生效:执行以下命令指定库路径
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/openssl-3.0:$LD_LIBRARY_PATH - 永久生效:将上述命令添加到
~/.bashrc或~/.profile文件末尾,保存后执行source ~/.bashrc(或对应文件)使设置生效。
内容的提问来源于stack exchange,提问作者Zip
相关产品推荐
相关产品推荐

