openSuse 中的“dotnet new command"导致“找不到可用的 libssl 版本"错误 [英] `dotnet new command` in openSuse causes `No usable version of the libssl was found` error

查看:20
本文介绍了openSuse 中的“dotnet new command"导致“找不到可用的 libssl 版本"错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在 openSuse 中开发 .NET Core.我确实安装了 SDK 和教程中的所有内容.现在,当我尝试运行 dotnet new console 命令时,出现此错误:

I'm trying to develop .NET Core in openSuse. I did install the SDK and everything in tutorials. Now, when I try to run dotnet new console command, I get this error:

找不到可用的 libssl 版本

No usable version of the libssl was found

中止(核心转储)

我找到了这个答案:(.NET Core 2.1 SDK Linux x64 找不到可用的 libssl 版本),但没有得到我应该怎么做来解决问题.他们似乎是 deep-linuxer(我不是,我只是想学习 linux).知道如何运行命令吗?

I found this answer: (.NET Core 2.1 SDK Linux x64 No usable version of the libssl was found), but didn't get what should I do to solve problem. They seems are deep-linuxer (which I'm not, I'm just trying to learn linux). Have any idea how to run the command?

更新:系统信息:

openSUSE Leap 15.0

openSUSE Leap 15.0

内核版本 4.12.14-lp150.12.22-default

操作系统类型:64-bit

推荐答案

你能安装 libopenssl1_0_0 包吗?.NET Core 应该选择它并使用它.

Can you install the libopenssl1_0_0 packages? .NET Core should pick it up and use it.

给好奇的人一个稍微长一点的解释:

A slightly longer explanation for anyone who is curious:

OpenSSL 是 Linux 上最常用的加密库之一.它有多个版本.1.0 版本有点旧,但被大量使用.1.1 是(相对)最近发布的较新版本.1.0 和 1.1 不兼容.期望 1.0 的应用程序不能针对 1.1 构建,也不能针对它运行.

OpenSSL is one of the most common cryptographic libraries used on Linux. It has multiple versions. Version 1.0 is kind of old, but heavily used. 1.1 is the newer version that was (relatively) recently released. 1.0 and 1.1 are not compatible. An application that expects 1.0 can not build against 1.1, nor run against it.

.NET Core 2.1 及所有早期版本仅支持 OpenSSL 1.0.

.NET Core 2.1, and all earlier versions only support OpenSSL 1.0.

许多 Linux 发行版开始将 OpenSSL 1.1 设为新的默认版本.但是他们中的大多数仍然有一个 1.0 的包.所以你只需要找到并安装它.在 Fedora 上,它是 compat-openssl10.对于 openSuSE,它是 libopenssl1_0_0.然后.NET Core会找到它,捡起来自动使用.

Many Linux distributions are starting to make OpenSSL 1.1 the new default. But most of them still have a package for 1.0. So you just need to find and install that. On Fedora it's compat-openssl10. For openSuSE, it's libopenssl1_0_0. Then .NET Core will find it, pick it up and use it automatically.

截至 2019 年 3 月,这不是必需的.我们已经更新了 .NET Core 2.1 及更高版本,以支持 OpenSSL 1.1 或 1.0(任何可用的版本)并与之配合使用.因此,最近发布的 .NET Core 不应再出现此问题.

As of March 2019, this shouldn't be required. We have updated .NET Core 2.1 and later to pick up and work with either OpenSSL 1.1 or 1.0 (whatever is available). So this problem should no longer happen with recent releases of .NET Core.

这篇关于openSuse 中的“dotnet new command"导致“找不到可用的 libssl 版本"错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆