You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I spent the day learning more than I ever wanted to know about gircore, but finally it comes down to this.
Gtk-4.0.gir (and 2 others) have a specification for shared-library = "libgtk-4-1.dll"
The nuget package provides :
/.nuget/packages/gircore.gtk-4.0/0.5.0/lib
➜ lib ls /.dll
net6.0/Gtk-4.0.dll net7.0/Gtk-4.0.dll net8.0/Gtk-4.0.dll
so, it wont work unless you install gtk4.0 somewhere else that has a gtk-4-1.dll.
msys2 does that, so I installed it, and copied ALL the dlls into my execution directory.. nope I dunno why, I am tired of this game.
add the /c/msys64/clang64/bin/ path to my PATH and it executes.
What's really sad is I used the Modules in dev studio to see what modules are in use, and it ONLY uses this libgtk-4-1 to initialize the Application, after that it seems the dlls shipped with nuget are sufficient.
so, just change that shared-library to gtk-4.0.dll and THAT will fix it right?
Noooo, now I get The type initializer for GtkApplication threw an exception. Unable to find an entry point named gtk_init in DLL Gtk.
The phrasing of that exception is odd because it abbreviates Gtk4... so maybe I could change something else in the generator to make the 4.0 Gtk dll work, but it's massive, and I have no clue how its supposed to work.
If anyone has a clue how this is working for everybody else, please point out how I am an idiot, and I will be thankful to you.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
I spent the day learning more than I ever wanted to know about gircore, but finally it comes down to this.
Gtk-4.0.gir (and 2 others) have a specification for shared-library = "libgtk-4-1.dll"
The nuget package provides :
/.nuget/packages/gircore.gtk-4.0/0.5.0/lib
➜ lib ls /.dll
net6.0/Gtk-4.0.dll net7.0/Gtk-4.0.dll net8.0/Gtk-4.0.dll
so, it wont work unless you install gtk4.0 somewhere else that has a gtk-4-1.dll.
msys2 does that, so I installed it, and copied ALL the dlls into my execution directory.. nope I dunno why, I am tired of this game.
add the /c/msys64/clang64/bin/ path to my PATH and it executes.
What's really sad is I used the Modules in dev studio to see what modules are in use, and it ONLY uses this libgtk-4-1 to initialize the Application, after that it seems the dlls shipped with nuget are sufficient.
so, just change that shared-library to gtk-4.0.dll and THAT will fix it right?
Noooo, now I get The type initializer for GtkApplication threw an exception. Unable to find an entry point named gtk_init in DLL Gtk.
The phrasing of that exception is odd because it abbreviates Gtk4... so maybe I could change something else in the generator to make the 4.0 Gtk dll work, but it's massive, and I have no clue how its supposed to work.
If anyone has a clue how this is working for everybody else, please point out how I am an idiot, and I will be thankful to you.
Beta Was this translation helpful? Give feedback.
All reactions