-
Notifications
You must be signed in to change notification settings - Fork 7.7k
Build Generic linux-x64 rpm and deb packages #3961
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@TravisEz13 I've located the very first version that supports Ubuntu 17 and Debian 9. It is |
Has .NET Core 2.0 fixed |
@borgdylan I see you just filed this issue, https://github.com/dotnet/corefx/issues/21386, about the same time you made this comment. It would be more appropriate to ask on that issue if it has been fixed. If you find something out from the .Net Core team that changes our decision to use portable Linux build, that would be a good time to cross-post back to PowerShell, with a link to the issue. Thanks |
Please keep tracking https://github.com/dotnet/corefx/issues/21386 . Using 2.0 will keep powershell broken for now until corefx gets fixed. A workaround would be to not use Environment.ProcessorCount et al in the Linux build until this gets fixed. |
The issues arose from a stale copy of System.Native installed system wide. After removing it, powershell starts normally. (tested against beta3) |
@borgdylan Can you repo this? If so please open new Issue for discussion and maybe fix if system-wide assemblies overlap local ones.. |
The non starting issues are solved for power shell |
@TravisEz13 I built powershell using Do you happen to know any docs about |
.NET core starting from 2.0.0 is built in a portable way so that build for Linux-x64 RID works on most Linux distros that are based on glibc C library 2.14 or newer (so e.g. not Alpine which is based on MUSL C library). That's why the published components are equal. |
@janvorli I guess tha same true for Windows RIDs too? |
@janvorli In my case, I built PowerShell on a Ubuntu.16.04 machine with RID's I was assuming that when |
@chuanjiao10 .NET core now has initial support for redhat 6.x, but it is not supported by the portable build. The specific RID rhel.6-x64 needs to be used. See https://github.com/dotnet/core/blob/master/Documentation/build-and-install-rhel6-prerequisites.md for details. If you are publishing self-contained, you will need a nuget.config with an entry for our myget feed, just like: https://github.com/dotnet/core/blob/master/samples/nuget.config |
@daxian-dbw Linux-x64 isn't any different from Ubuntu.16.04-x64. The change we've made to enable the portable Linux-x64 rid was that we dynamically load OpenSSL and ICU libraries at runtime and we can also handle few missing APIs in various versions of CURL, so we can handle subtle differences between the distros. We don't build any distro specific binaries, so the publish publishes the same files. |
@chuanjiao10 from 2.0 |
@janvorli Thank you very much for the explanation! I built on Ubuntu.16.04 and then played with the generated artifacts on CentOS7. It looks to me that our only obstacle is the native component |
@daxian-dbw if you build the libpsl-native.so on CentOS 7, then it should be as portable as the dotnet stuff (we build it on CentOS 7 to ensure that it doesn't depend on newer glibc). |
@janvorli Many thanks! Yes, powershell works fine on |
Uh oh!
There was an error while loading. Please reload this page.
Background: See #3721 (comment)
tl;dr: This should build the assemblies in a way that they are portable to all the supported Linux x64 platforms for .NET, but requires that we package native binaries which
dotnet publish
will publish.linux-x64
.tar.gz
package for Linux2.0.0-preview1-002106-00
to2.0.0-preview2-25303-04
that includes Fix SSL on Debian 9 dotnet/corefx#19070 to support Ubuntu 17 and Debian 9 (update: powershell has moved to official .NET Core 2.0 release)The text was updated successfully, but these errors were encountered: