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

Mono and Missing .dll's #20

Open
Fearaniar opened this issue Dec 2, 2021 · 2 comments
Open

Mono and Missing .dll's #20

Fearaniar opened this issue Dec 2, 2021 · 2 comments

Comments

@Fearaniar
Copy link

Before I say anything, I just want to mention that I'm not well versed in computer-speak and am, all things considered, a pretty pathetic Linux user. With that being said, I'm always willing to learn, and, in this particular case, I've been bashing my head against the problem for the last 5 hours, trying to approach it from so many different angles, and on every front I've hit nothing but dead ends. Basically, I want Sound Sense on DF--that's it.

I'm running Ubuntu 20.04
DF version is: 0.47.05
SoundCenSe v.1.4.4 (latest at the time)

OK, the nitty-gritty stuff:

  • I've installed the mono-complete package, and gtk-sharp2
  • SoundCense, in it's entirety has been unpackaged in my df_linux folder where the main executable can be found as well as the core game files.
  • I now attempt to run the SoundCenSeGTK.exe file with the command 'mono SoundCenSeGTK.exe'.
  • The only response is a curt and instantaneous:

[ERROR] FATAL UNHANDLED EXCEPTION: System.DllNotFoundException: libglib-2.0-0.dll assembly: type: member:(null)
at (wrapper managed-to-native) GLib.Marshaller.g_malloc(uintptr)
at GLib.Marshaller.StringToPtrGStrdup (System.String str) [0x0002a] in <7fabccec8b944d08a73d2c44188cf7f9>:0
at GLib.Global.set_ProgramName (System.String value) [0x00001] in <7fabccec8b944d08a73d2c44188cf7f9>:0
at Gtk.Application.SetPrgname () [0x0000d] in <64bd07ca456641de939ae0132964184c>:0
at Gtk.Application.Init () [0x00001] in <64bd07ca456641de939ae0132964184c>:0
at SoundCenSeGTK.MainClass.Main (System.String[] args) [0x000a7] in <39229d700ca34e4b81effba0ff3175b1>:0

With nothing else ... command line awaits next entry.

Windows has it's specific .dll files, and I'm assuming mono is trying to access one of them, but my being a Linux user has a special way of pissing it off--but that's just a guess. In any case, help would be greatly appreciated....

@Algorithman
Copy link
Owner

Algorithman commented Dec 2, 2021

You could try to install the libglib3.0-cil and/or libglib3.0-cil-dev package on 20.04. They removed the 2.0 version from their packagemanagers, lets hope mono likes the version upgrade.

But the other thing probably would be to use one of the packaged versions like http://www.bay12forums.com/smf/index.php?topic=157712.0

@bubstance
Copy link

bubstance commented May 31, 2022

Just in case someone stumbles across this, I had the same problem as above and was able to finally get Mono to launch the .exe as intended.

I had to add some DllMaps to the main Mono config file (/etc/mono/config).

<dllmap dll="libglib-2.0-0.dll" target="libglib-2.0.so.0" os="!windows"/>
<dllmap dll="libgobject-2.0-0.dll" target="libgobject-2.0.so.0" os="!windows"/>
<dllmap dll="libgdk_pixbuf-2.0-0.dll" target="libgdk_pixbuf-2.0.so.0" os="!windows"/>
<dllmap dll="libgdk-win32-2.0-0.dll" target="libgdk-x11-2.0.so" os="!windows"/>

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

3 participants