.Net 5 unter Linux?

  • C#

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Bluespide.

    .Net 5 unter Linux?

    Hallo zusammen,

    hat von euch schon mal jemand eine .Net 5 Self-contained Anwendung auf Linux zum laufen gebracht? Ich wollte auf dem Linux-System nicht das .Net 5 installieren, daher Self-contained:

    Leider bekomme ich nur aus Ausgabe auf dem Linux-System ​/bin/sh: ./HelloWorld: not found
    Ich dachte die ​HelloWorld Datei ohne Dateiendung wäre jetzt die auszuführende Datei?
    Äh, da kommt folgendes raus:

    Quellcode

    1. /lib64/ld-linux-x86-64.so.2 (0x7f911c872000)
    2. libpthread.so.0 => /lib64/ld-linux-x86-64.so.2 (0x7f911c872000)
    3. libdl.so.2 => /lib64/ld-linux-x86-64.so.2 (0x7f911c872000)
    4. libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x7f911c4ae000)
    5. libm.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7f911c872000)
    6. libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x7f911c494000)
    7. libc.so.6 => /lib64/ld-linux-x86-64.so.2 (0x7f911c872000)


    Edit: ah. Ich benutze alpine linux, da geht das wohl einfach nicht:

    Quellcode

    1. the problem is, that jfrog cli was compiled against glibc and alpine linux only provides uclibc. To make it run under alpine its not trivial, you have to install a sandbox that is bigger than then alpine env

    cannot run jfrog executable from inside alpine linux containerAsk Question
    Da muss ich mir wohl eine ander Distro suchen.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Bluespide“ ()

    Ah, ja. Alpine und die (fehlende) glibc. Sehr gern gesehen.

    Willst du das in einem Docker-Container machen? Nimm debian. Ja, es ist ~50 MB größer, aber häufig mit weniger verbiegen einsetzbar.

    Alter Post vor deinem Edit
    Hm, das sieht nicht richtig aus. Scheint, als würde statt libpthread, libdl, libm und libc dein ELF-Loader verwendet (ich hätte da „not found“ erwartet, aber nicht *das*). Diese Libraries kommen aber ziemlich sicher mit dem glibc-Paket deiner Distro.

    Gibt es Dateien nach dem Muster *.so* im Build-Zielordner? Wenn ja, welche?
    Welche Distribution verwendest du?
    Welche dieser Dateien existieren? Welche dieser Dateien sind Symlinks und worauf zeigen diese?
    • /lib
    • /lib64
    • /usr/lib
    • /usr/lib64
    • /lib/libdl.so
    • /lib64/libdl.so
    • /usr/lib/libdl.so
    • /usr/lib64/libdl.so
    • /lib/libdl.so.2
    • /lib64/libdl.so.2
    • /usr/lib/libdl.so.2
    • /usr/lib64/libdl.so.2
    • Tipp: ls -lh / /lib/libdl.so /lib64/libdl.so /usr/lib/libdl.so /usr/lib64/libdl.so /lib/libdl.so.2 /lib64/libdl.so.2 /usr/lib/libdl.so.2 /usr/lib64/libdl.so.2 zeigt alles auf einen Schlag.


    Mit freundlichen Grüßen,
    Thunderbolt