-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Self-contained application not working on Mac because of openssl #17872
Comments
cc @blackdwarf |
@bluemmc What docs, in particular? |
Actually, https://docs.microsoft.com/en-us/dotnet/articles/core/app-types#self-contained-application outlines that you need to have native depedencies for .NET Core installed in order to use self-contained applications. @bluemmc which doc are you referring to? Since this is a docs bug, can you open it on dotnet/core-docs, since that is the repo that contains all of the documentation? Thanks! |
@blackdwarf @bartonjs I think it is a huge mistake to think this issue is about documentation (*). Rather this is about the .net core platform being successful as a cross platform alternative (and on Mac OS X in particular). Right now - only because of this issue - I can not create a dot net core application that is so easy to install that even my "grandmother" can install and use it on a Mac. Instead - now only patient software developers, that can manage to get brew and openssl working, can install a dot net core project. On my Mac I had considerable trouble with brew failing to update, openssl not having permissions to write to the right system folder and finally the old version of openssl rather then the new one being on the system path.- I almost gave up. If dot net core want to be successful as a cross-platform alternative to Java/NodeJs it should not create serious installation barriers on Mac OS X. Of cause if your idea is for dot net core to work mostly on Windows and only in theory on other OS's then just patch the documentation. In that case the current OpenSSL requirement is a good way to deter most users on non-Windows. (*) The docs state that "Unlike the portable application, a self-contained application does not rely on any shared component to be present on the machine where you want to deploy the application". |
@bluemmc we are aware that installing OpenSSL is a hurdle and we are figuring out a plan on how to tackle it (one issue that is related to that is #17597 ). The document then goes on to state that you need native dependencies. If you feel that the doc is not clear enough, please file an issue on core-docs so we can fix it (make it clearer) so people are 100% aware of the features of self-contained applications. |
My reading of the linked document is that "native dependencies" is used in the same sense as under "Portable application with native dependencies" - that is, meaning additional requirements beyond those of the .NET Core framework that are part of your application (e.g. if you linked to DirectX or OpenGL). It would be very helpful if that document included a note mentioning the current OpenSSL issue on Mac OS X, and included or linked to the two available workarounds - updating OpenSSL via Homebrew or bundling the relevant DLLs alongside the self-contained application. |
@FacticiusVir thanks for the feedback. Can you please open an issue for this on core-docs and /cc me so I can include it in my next revision of that and deployment topic? I am planning to visit them this week, so it would be a good time to fix any vagueness with the doc. Thanks! |
As of dotnet/corefx#17011 OpenSSL isn't a dependency for macOS (.NET Core 2.0), unless an application goes out of their way to say something like |
The docs state that it is possible to deploy a self-contained application via xcopy because there are no external dependencies but on Mac OS X this is not true. The Mac version requires a non-standard version of openssl that Apple does not support to be installed globally. This openssl version should be a part of dot net core files if needed.
The text was updated successfully, but these errors were encountered: