GridTalk.de
Fehlermeldung "mono OpenSim.exe" - Druckversion

+- GridTalk.de (https://www.gridtalk.de)
+-- Forum: Werkstatt (https://www.gridtalk.de/forumdisplay.php?fid=4)
+--- Forum: Technik (https://www.gridtalk.de/forumdisplay.php?fid=25)
+--- Thema: Fehlermeldung "mono OpenSim.exe" (/showthread.php?tid=4716)

Seiten: 1 2


Fehlermeldung "mono OpenSim.exe" - Kalkofe - 03.10.2023

Hallo zusammen,
ich verzweifel gerade. Mittlerweile habe ich mehrfach Opensim mit
Mysql erfolgreich installiert. Heute nach längerer Pause mal wieder angefangen
einen Server neu aufzusetzen. Beim starten von mono OpenSim.exe
bekomme ich immer wider folgende Fehlermeldung:

Zitat:Cannot open assembly 'OpenSim.exe': File does not contain a valid CIL image.

Mittlerweile habe ich mono schon dreimal deinstalliert und wieder neu installiert.

System ist Ubuntu 22.04

Vielleicht weiß jemand Rat. Danke.

LG


RE: Fehlermeldung "mono OpenSim.exe" - Mareta Dagostino - 03.10.2023

Hast du vielleicht die aktuelle Entwicklerversion aus dem OSGrid installiert, also eine Version 0.9.3.x? Dann musst du .NET 6 verwenden statt Mono. Die .NET 6 Runtime gibt es in Ubuntu 22.04 bereits im normalen Repository:
> sudo apt install dotnet-runtime-6.0

Oder du verwendest vorerst noch eine 0.9.2.x Version, die noch .NET 4.8 und auf Linux Mono verwendet. Download zum Beispiel auf der OSGrid Downloadseite unter "Old 0.9.2 Build", oder die offizielle Release 0.9.2.2 auf OpenSimulator.org.


RE: Fehlermeldung "mono OpenSim.exe" - Pius Noel - 03.10.2023

Mir kommt es vor als ob dein Dowload von OpenSim aus irgendeinem Grund korrupt ist.

Welche OpenSim Version verwendest du und welches ist deine Rechnerarchitektur?

Ich habe in der Hetzner Cloud auf einer VM unter X86/AMD Basis mit frisch installiertem Ubuntu 22.04 folgende Befehle durchgespielt und OpenSim.exe startete fehlerfrei.

Code:
sudo apt update

sudo apt upgrade

sudo apt install ca-certificates gnupg

sudo gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/mono-official-archive-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF

echo "deb [signed-by=/usr/share/keyrings/mono-official-archive-keyring.gpg] https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list

sudo apt update

sudo apt install mono-complete

wget http://opensimulator.org/dist/opensim-0.9.2.2.tar.gz

tar -xf opensim-0.9.2.2.tar.gz

cd opensim-0.9.2.2/bin

mono OpenSim.exe
Ich habe ansonsten auch keine Idee, was bei dir schif laufen könnte.

Pius /


RE: Fehlermeldung "mono OpenSim.exe" - Pius Noel - 03.10.2023

Was Mareta schrieb könnte natürlich auch zutreffen.


RE: Fehlermeldung "mono OpenSim.exe" - Kalkofe - 04.10.2023

Guten Morgen zusammen,
Mareta hat Recht, ich hatte die neueste OSG Version installiert.
Bin wieder zurück auf eine 0.9.2er Version und alles läuft wie immer.
Da wäre ich nie drauf gekommen, habe den Hinweis auf der OSG Dowload Seite
nicht gelesen.

Vielen Dank Mareta. Smile

Eine Frage zu der 0.9.3 hätte ich aber noch, wie startet man die denn, auch mit mono OpenSim.exe?
Und warum ist das jetzt so, bringt das Vorteile?

Ich wünsche allen eine schöne Restwoche


RE: Fehlermeldung "mono OpenSim.exe" - Pius Noel - 04.10.2023

Ich weiss jetzt nicht, woher du deine OpenSim Dateien hast, aber normalerweise wird unter Linux ab OpenSim 0.9.3 mindestens eine Installation von dotnet-runtime-6.0 vorausgesetzt.

Es gibt dann auch keine OpenSim.exe mehr sondern nur noch eine OpenSim.dll. Diese wird dann aus dem OpenSim bin-verzeichnis heraus wie folgt gestartet:
Code:
dotnet OpenSim.dll

Vorgängig sollte unter Linux noch ein `ulimit -s 1048576` gesetzt werden.

Normalerweise sollte es im bin-Verzeichnis bereits ein Bash-Script mit dem Namen opensim.sh geben mit dem OpenSim mit diesen beiden Befehlen gestartet werden kann.

Der Vorteil von Dotnet gegenüber Linux liegt auf der Hand. Dotnet ist die von Microsoft diktierte Zukunft und diese hat bereits begonnen. Mono wird nicht mehr weiter aktiv unterstützt und so bleibt nichts anderes übrig als diesen Weg einzuschlagen.

Aus Entwicklersicht macht es keinen Sinn zwei Schienen zu fahren, auch wenn es teilweise gar nicht so einfach ist, die bestehenden Bibliotheken, Funktionen und Tools abzulösen oder anzupassen. Mir kommt es manchmal vor, wie ein "Augen zu und durch", da meines Erachtens noch nicht alle offenen Fragen wirklich geklärt sind.

Pius /


RE: Fehlermeldung "mono OpenSim.exe" - Jupiter Rowland - 05.10.2023

(04.10.2023, 15:18)Pius Noel schrieb: Der Vorteil von Dotnet gegenüber Linux liegt auf der Hand. Dotnet ist die von Microsoft diktierte Zukunft und diese hat bereits begonnen. Mono wird nicht mehr weiter aktiv unterstützt und so bleibt nichts anderes übrig als diesen Weg einzuschlagen.
dotnet6 gibt's übrigens sowohl für Windows als auch für Linux.


RE: Fehlermeldung "mono OpenSim.exe" - DJ Archie - 05.10.2023

(05.10.2023, 23:11)Jupiter Rowland schrieb:
(04.10.2023, 15:18)Pius Noel schrieb: Der Vorteil von Dotnet gegenüber Linux liegt auf der Hand. Dotnet ist die von Microsoft diktierte Zukunft und diese hat bereits begonnen. Mono wird nicht mehr weiter aktiv unterstützt und so bleibt nichts anderes übrig als diesen Weg einzuschlagen.
dotnet6 gibt's übrigens sowohl für Windows als auch für Linux.

Was Microsoft diktiert ist irrelevant, es beeinflusst unsere Zukunft nicht. Undecided


RE: Fehlermeldung "mono OpenSim.exe" - Mareta Dagostino - 06.10.2023

Dotnet (.NET) ist eine Bibliothek von Microsoft, ohne die C# Programmierung ziemlich langweilig ist. Auch C# wurde im Auftrag von Microsoft entwickelt. Während die Programmiersprache als Standard eingereicht wurde (ECMA und ISO), war .NET closed source und lief nur auf Windows.

Daraufhin entstand das Mono-Projekt, wo Freiwillige - und später auch Firmen (z.B für Macintosh und Steam) - Code beitrugen. Mit Reverse-Engineering wurde das Framework nachprogrammiert, und Mono verhielt sich ähnlich wie .NET. So 100% haben sie es nie hinbekommen, aber ziemlich gut.

Beginnend mit .NET Core wurde das Framework grundlegend geändert, und ab .NET 6.0 wird das alte Framework nicht mehr weiterentwickelt. Das blieb bei 4.8 stehen. Auch unter Windows müssen Entwickler ihre Programme erheblich anpassen, wenn sie von 4.8 auf 6.0 springen wollen. Das ist keine Schikane für die Linux-Community, sondern eine allgemeine Inkompatibilität.

Im Gegenteil! Microsoft hat eine Entwicklungsumgebung (Visual Studio Code) und das .NET ab 6.0 auf open source gestellt. Downloads für andere Betriebssysteme wie Linux werden neben den Downloads für Windows angeboten. Es wird auf die Paketmanager verschiedener Linux-Distributionen verlinkt. Weil das Original nun frei verfügbar ist, wurde die Parallelentwicklung des Nachbaus, also Mono, eingestellt.


RE: Fehlermeldung "mono OpenSim.exe" - Pius Noel - 06.10.2023

Sehr gut erklärt, Mareta!