我正在尝试安装此依赖项,但始终收到以下错误消息:
这就是我在终端机里放的东西:
sudo apt install libssl1.1
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package libssl1.1
E: Couldn't find any package by glob 'libssl1.1'如何获取libssl1.1
我对Linux非常陌生,所以我不知道这是否是一个显而易见的问题。
我正在使用Ubuntu22.04LTS
发布于 2022-06-07 14:02:17
Ubuntu22.04使用libssl3,因此此时不推荐libssl1.1。
为Ubuntu22.04创建一个使用过时的libssl版本的新包似乎是一个非常糟糕的主意。此外,为系统范围的库(如libssl )处理版本也是一个非常糟糕的想法,将来可能会产生不可预测的后果。
因此,一个选择是,如果您将继续使用Ubuntu22.04,您应该转换为您的应用程序使用libssl3。
另一种选择是在VM或容器中运行遗留应用程序,在那里您可以安装安装了libssl1.1的较旧版本的Ubuntu (例如20.04)。
在你的情况下,这两种选择似乎是最可行的选择。
发布于 2022-06-07 15:08:40
虽然我认为阿图尔的建议是好的。我设法为一个遗留应用程序(特别是easytether-usb)解决了这个问题,我从1.1install中抓取了libcrypto.so.1.1,如@Nishant在他的回答中所引用的那样。我将它安装在主目录下的用户空间中,并在/lib/libcrypto.so.1.1中创建了到它的sym链接:
sudo ln -s ~/openssl/lib/libcrypto.so.1.1 /lib/libcrypto.so.1.1您通常可以为特定的应用程序将~/openss/lib添加到LD_LIBRARY_PATH中,但在我的示例中,leacy应用程序在$LD_LIBRARY_PATH中没有正确地查看,所以我必须知道它在哪里查找libcrypto.so.1.1,我这样做的方法如下:
sudo strace -e trace=open,openat,close,read,write,connect,accept easytether-usb这向我展示了十几次在不同位置查找文件libcrypto.so.1.1的尝试,这就是为什么我知道将sym链接添加到上面的/lib/。
从那以后,这个遗留的应用程序就启动了,并正常工作了。其他用例可能需要其他共享库。上面的strace命令应该有助于确定需要什么。
发布于 2022-06-07 13:29:13
https://packages.ubuntu.com/bionic/amd64/libssl1.1/download
这就是你要的!如果要下载libss,请使用此链接。
https://askubuntu.com/questions/1408000
复制相似问题