Skip to content
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

Running on OpenSUSE 13.2 #37

Closed
alexeycalinovski opened this issue Dec 8, 2015 · 8 comments
Closed

Running on OpenSUSE 13.2 #37

alexeycalinovski opened this issue Dec 8, 2015 · 8 comments

Comments

@alexeycalinovski
Copy link

I have successfully ran a console and ASP.NET 5 app using DNX coreclr on Ubuntu, but I am not able to do so on Opensuse 13.2 x64. I followed this tutorial : http://dotnet.github.io/docs/getting-started/installing/installing-core-linux.html .
I am trying to run a simple hello world as in the tutorial but the commands dnu and dnx do not do anything, they run and exit immediately.
The output of dnvm list :

Active Version              Runtime Architecture OperatingSystem Alias
------ -------              ------- ------------ --------------- -----
     1.0.0-rc1-final      coreclr x64          linux
     1.0.0-rc1-final      mono                 linux/osx       default
*    1.0.0-rc1-update1    coreclr x64          linux
     1.0.0-rc2-16237      coreclr x64          linux

How can I get this to work on OpenSUSE 13.2? The final goal is to run a ASP.NET 5 application.

@moozzyk
Copy link

moozzyk commented Dec 8, 2015

export DNX_TRACE=1 to see what is happening. Most likely you don't have libicu or the one you have is no the one coreclr was linked against.

@moozzyk
Copy link

moozzyk commented Dec 8, 2015

One thing to add - we have not tested dnx on SuSe and SuSe is not officially supported so if things work it's great but they may not work.

@alexeycalinovski
Copy link
Author

I understand that, but I hope it will work .. or I can contribute by finding why it doesn't :) . Anyway, the export helped in getting this :

Loaded module: dnx.coreclr.so
Found export: CallApplicationMain

Unhandled Exception:
     Cannot print exception string because Exception.ToString() failed.
 Aborted

libicu-devel-51.2-6.1.2.x86_64

@moozzyk
Copy link

moozzyk commented Dec 8, 2015

The error you get you are missing libicu. See aspnet/dnx#3059 for more details.

@alexeycalinovski
Copy link
Author

I got over that part by using your suggestion. I now have this other error, when I issue dnu restore:

Information: [LoaderContainer]: Load unmanaged library name=System.Net.Http.Native
----------
System.TypeInitializationException: The type initializer for 'System.Net.Http.CurlHandler' threw an exception. ---> System.TypeInitializationException: The type initializer for 'libcurl' threw an exception. ---> System.TypeInitializationException: The type initializer for 'HttpInitializer' threw an exception. ---> System.DllNotFoundException: Unable to load DLL 'System.Net.Http.Native': The specified module could not be found.
 (Exception from HRESULT: 0x8007007E)
   at Interop.HttpInitializer.EnsureCurlIsInitialized()
   at Interop.HttpInitializer..cctor()
   --- End of inner exception stack trace ---
   at Interop.HttpInitializer.Initialize()
   at Interop.libcurl..cctor()
   --- End of inner exception stack trace ---
   at Interop.libcurl.curl_version_info(Int32 curlVersionStamp)
   at System.Net.Http.CurlHandler..cctor()
   --- End of inner exception stack trace ---
   at System.Net.Http.CurlHandler..ctor()
   at System.Net.Http.HttpClient..ctor()
   at Microsoft.Dnx.Tooling.Restore.NuGet.HttpSource..ctor(String baseUri, String userName, String password, Reports reports)
   at Microsoft.Dnx.Tooling.PackageFeedCache.CreatePackageFeed(PackageSource source, Boolean noCache, Boolean ignoreFailedSources, Reports reports)
   at Microsoft.Dnx.Tooling.PackageFeedCache.<>c__DisplayClass1_0.<GetPackageFeed>b__0(PackageSource _)
   at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
   at Microsoft.Dnx.Tooling.PackageFeedCache.GetPackageFeed(PackageSource source, Boolean noCache, Boolean ignoreFailedSources, Reports reports)
   at Microsoft.Dnx.Tooling.RestoreCommand.AddRemoteProvidersFromSources(List`1 remoteProviders, List`1 effectiveSources, PackageFeedCache packageFeeds, SummaryContext summary)
   at Microsoft.Dnx.Tooling.RestoreCommand.<Execute>d__68.MoveNext()
----------
Restore failed
The type initializer for 'System.Net.Http.CurlHandler' threw an exception.

I followed #1502 but still the error remains.

@alexeycalinovski
Copy link
Author

Also, I intended to add more nuget feeds but I can't find NuGet.config file, as described here and because of #3550.

@moozzyk
Copy link

moozzyk commented Dec 10, 2015

Are you sure you have libcurl and libssl installed (as per https://docs.asp.net/en/latest/getting-started/installing-on-linux.html)?
For restore you can use the -s <FEED> parameter to use a specific feed. You can use multiple -s if you want to restore from multiple feeds. I guess you could just create a NuGet.config file if it is missing.
You can also use dnu feeds list to see what the effective feeds for you project are.

@alexeycalinovski
Copy link
Author

curl --version
curl 7.42.1 (x86_64-suse-linux-gnu) libcurl/7.42.1 OpenSSL/1.0.1k zlib/1.2.8 libidn/1.31 libssh2/1.5.0

ls /usr/lib64/libssl*
/usr/lib64/libssl3.so  /usr/lib64/libssl.so  /usr/lib64/libssl.so.0.9.8

Issue #2995 also suggests the problem is from incorrect version of libcurl .

ldd ~/.dnx/runtimes/dnx-coreclr-linux-x64.1.0.0-beta8/bin/System.Net.Http.Native.so
 linux-vdso.so.1 (0x00007ffce72b5000)
 libcurl-gnutls.so.4 => not found
 libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f1933fba000)
 libm.so.6 => /lib64/libm.so.6 (0x00007f1933cb7000)
 libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f1933aa0000)
 libc.so.6 => /lib64/libc.so.6 (0x00007f19336f1000)
 /lib64/ld-linux-x86-64.so.2 (0x00007f19344e7000)

So it seems I am missing libcurl-gnutls.so.4, creating a sym link allows dnu (/usr/lib64/libcurl-gnutls.so.4 -> libcurl.so.4.3.0) to run without error, but I don't know to what extent. So I'll try building libcurl with gnutls support.

Building curl with gnutls works fine.

This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants