Menu

Can't save any simulation

2020-06-30
2021-01-29
  • Rafael Nahat

    Rafael Nahat - 2020-06-30

    Hello,

    I am running Debian 10, the latest version of DWSIM and Mono 6.10 (which is the latest version available for Debian 10). When I try to save any simulation, I get the following error:

    System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Configuration.ConfigurationErrorsException: Error Initializing the configuration system. ---> System.Configuration.ConfigurationErrorsException: Unrecognized configuration section <runtime> (/usr/local/lib/dwsim/DWSIM.UI.Desktop.exe.config line 3)
    at System.Configuration.ConfigInfo.ThrowException (System.String text, System.Xml.XmlReader reader) [0x00007] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.SectionGroupInfo.ReadContent (System.Xml.XmlReader reader, System.Configuration.Configuration config, System.Boolean overrideAllowed, System.Boolean root) [0x00135] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.SectionGroupInfo.ReadRootData (System.Xml.XmlReader reader, System.Configuration.Configuration config, System.Boolean overrideAllowed) [0x00007] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.Configuration.ReadConfigFile (System.Xml.XmlReader reader, System.String fileName) [0x000ce] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.Configuration.Load () [0x00043] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.Configuration.Init (System.Configuration.Internal.IConfigSystem system, System.String configPath, System.Configuration.Configuration parent) [0x0005d] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.Configuration..ctor (System.Configuration.InternalConfigurationSystem system, System.String locationSubPath) [0x00056] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.InternalConfigurationFactory.Create (System.Type typeConfigHost, System.Object[] hostInitConfigurationParams) [0x0000d] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.ConfigurationManager.OpenExeConfigurationInternal (System.Configuration.ConfigurationUserLevel userLevel, System.Reflection.Assembly calling_assembly, System.String exePath) [0x000ef] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.ClientConfigurationSystem.get_Configuration () [0x0000e] in <f9ebcba1c32849f8999456b268ea3539>:0
    --- End of inner exception stack trace ---
    at System.Configuration.ClientConfigurationSystem.get_Configuration () [0x0002a] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00005] in <f9ebcba1c32849f8999456b268ea3539>:0
    at System.Xml.Serialization.TempAssembly.get_UseLegacySerializerGeneration () [0x00022] in <4a776760e559455ead15edf260db6599>:0
    at System.Xml.Serialization.TempAssembly..ctor (System.Xml.Serialization.XmlMapping[] xmlMappings, System.Type[] types, System.String defaultNamespace, System.String location, System.Security.Policy.Evidence evidence) [0x0003a] in <4a776760e559455ead15edf260db6599>:0
    at System.Xml.Serialization.XmlSerializer.GenerateTempAssembly (System.Xml.Serialization.XmlMapping xmlMapping, System.Type type, System.String defaultNamespace) [0x0000e] in <4a776760e559455ead15edf260db6599>:0
    at System.Xml.Serialization.XmlSerializer..ctor (System.Type type, System.String defaultNamespace) [0x000a9] in <4a776760e559455ead15edf260db6599>:0
    at System.Xml.Serialization.XmlSerializer..ctor (System.Type type) [0x00000] in <4a776760e559455ead15edf260db6599>:0
    at DWSIM.CrossPlatform.UI.Controls.ReoGrid.Worksheet.SaveRGF (System.IO.Stream s) [0x008f0] in <6f0e532c5a1348d0829dc744a1c408cf>:0
    at DWSIM.CrossPlatform.UI.Controls.ReoGrid.Worksheet.SaveRGF (System.String path) [0x00008] in <6f0e532c5a1348d0829dc744a1c408cf>:0
    at DWSIM.UI.Forms.Flowsheet+<>c__DisplayClass53_3.<initializecomponent>b__123 () [0x00035] in <07cf6298a8254c60a94954e7b5be5130>:0
    at Eto.GtkSharp.Forms.ApplicationHandler.Invoke (System.Action action) [0x0001e] in <2084ba8256c9420ea60ad1e5f1df14e5>:0
    at Eto.Forms.Application.Invoke (System.Action action) [0x00006] in <23bf6400f02d49eba883a8238fbdb959>:0
    at DWSIM.UI.Forms.Flowsheet+<>c__DisplayClass53_0.<initializecomponent>b__56 (System.Xml.Linq.XDocument xdoc) [0x00080] in <07cf6298a8254c60a94954e7b5be5130>:0
    at DWSIM.FlowsheetBase.FlowsheetBase.SaveToXML () [0x00bdd] in <6a60f20f3d6c4e518ded65f3b6828114>:0
    at DWSIM.FlowsheetBase.FlowsheetBase.SaveToMXML () [0x00000] in <6a60f20f3d6c4e518ded65f3b6828114>:0
    at DWSIM.UI.Forms.Flowsheet.SaveSimulation (System.String path, System.Boolean backup) [0x0018d] in <07cf6298a8254c60a94954e7b5be5130>:0
    at DWSIM.UI.Forms.Flowsheet+<>c__DisplayClass53_0.<initializecomponent>b__8 () [0x0008b] in <07cf6298a8254c60a94954e7b5be5130>:0
    at DWSIM.UI.Forms.Flowsheet+<>c__DisplayClass53_0.<initializecomponent>b__32 (System.Object sender, System.EventArgs e) [0x00000] in <07cf6298a8254c60a94954e7b5be5130>:0
    at Eto.Forms.MenuItem.OnClick (System.EventArgs e) [0x00008] in <23bf6400f02d49eba883a8238fbdb959>:0
    at Eto.Forms.MenuItem+Callback.OnClick (Eto.Forms.MenuItem widget, System.EventArgs e) [0x0000c] in <23bf6400f02d49eba883a8238fbdb959>:0
    at Eto.GtkSharp.Forms.Menu.ButtonMenuItemHandler+ButtonMenuItemConnector.HandleActivated (System.Object sender, System.EventArgs e) [0x00033] in <2084ba8256c9420ea60ad1e5f1df14e5>:0
    at (wrapper managed-to-native) System.Reflection.RuntimeMethodInfo.InternalInvoke(System.Reflection.RuntimeMethodInfo,object,object[],System.Exception&)
    at System.Reflection.RuntimeMethodInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x0006a] in <a17fa1457c5d44f2885ac746c1764ea5>:0
    --- End of inner exception stack trace ---
    at System.Reflection.RuntimeMethodInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00083] in <a17fa1457c5d44f2885ac746c1764ea5>:0
    at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <a17fa1457c5d44f2885ac746c1764ea5>:0
    at System.Delegate.DynamicInvokeImpl (System.Object[] args) [0x000e7] in <a17fa1457c5d44f2885ac746c1764ea5>:0
    at System.MulticastDelegate.DynamicInvokeImpl (System.Object[] args) [0x00008] in <a17fa1457c5d44f2885ac746c1764ea5>:0
    at System.Delegate.DynamicInvoke (System.Object[] args) [0x00000] in <a17fa1457c5d44f2885ac746c1764ea5>:0
    at GLib.Signal.ClosureInvokedCB (System.Object o, GLib.ClosureInvokedArgs args) [0x0007d] in <ed39f21b9e9343dcbd442a17ad356a9f>:0
    at GLib.Signal+SignalClosure.Invoke (GLib.ClosureInvokedArgs args) [0x0000c] in <ed39f21b9e9343dcbd442a17ad356a9f>:0
    at GLib.Signal+SignalClosure.MarshalCallback (System.IntPtr raw_closure, GLib.Value return_val, System.UInt32 n_param_vals, GLib.Value param_values, System.IntPtr invocation_hint, System.IntPtr marshal_data) [0x00050] in <ed39f21b9e9343dcbd442a17ad356a9f>:0 </ed39f21b9e9343dcbd442a17ad356a9f></ed39f21b9e9343dcbd442a17ad356a9f></ed39f21b9e9343dcbd442a17ad356a9f></a17fa1457c5d44f2885ac746c1764ea5></a17fa1457c5d44f2885ac746c1764ea5></a17fa1457c5d44f2885ac746c1764ea5></a17fa1457c5d44f2885ac746c1764ea5></a17fa1457c5d44f2885ac746c1764ea5></a17fa1457c5d44f2885ac746c1764ea5></initializecomponent></initializecomponent></initializecomponent></initializecomponent></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></f9ebcba1c32849f8999456b268ea3539></runtime>

    And no file is written. If I write the filename without an extension in the save dialog, the error does not appear but again no file is written. I checked the backup directory and there are files there, but I don't know if they are of the same format I should get when I save a simulation in the ordinary way because I can't generate a saved file. Also, the path DWSIM states as the location of the backup file is wrong:

    It states: Backup file successfully saved to '/home/raf32/DWSIM Application Data/Backup/redd'.

    but the file is at: /home/raf32/DWSIM Application Data/Backup/30_06_2020_14_06_34.dwxmz

    this "redd" name was a test without an extension in the filename. No file with that name was created. I also get the same error (I think) when it tries to save automatically a file of a simulation I haven't tried to save manually yet (see the attached screenshot).

    How can I fix this?

     
  • Shane Tierling

    Shane Tierling - 2020-07-03
    • Rafael

    I too ran into the same problem. I am using Ubuntu 18.04 and could not save my work. As a workaround, I waited until a backup file was created, then moved and renamed the file. I was then able to open the file as an existing file, make changes and save back to the same file.

    A little wonky, but it worked for me. I also closed and restarted DWSIM between the time that I moved the file and then reopened the renamed file. You likely will find that you do not need to shutdown and restart DWSIM.

    • Shane
     
  • Daniel Medeiros

    Daniel Medeiros - 2020-07-03

    I'll take a look to see what's going on , thanks for the reports, guys.

     
  • Rafael Nahat

    Rafael Nahat - 2020-07-03

    Yes, it seems that the error does not happen if you are working on an opened file instead of a new file. "Save as" also works. But unfortunately I ran into another problem hahahaha

    Both this and the other problem which I will report shortly in another post seem to be linux-specific.

     
  • Daniel Medeiros

    Daniel Medeiros - 2020-07-03

    I've did some tests with existing files and it worked ok, Ubuntu 16.04 with Mono 6.10, but there is an update for Mono and I'm installing it to see if it will still work.

     
  • Daniel Medeiros

    Daniel Medeiros - 2020-07-03

    Still working fine here with latest mono version... your error occurs while trying to save data from spreadsheet, but it is not a dwsim bug.

     
  • Daniel Medeiros

    Daniel Medeiros - 2020-07-03

    try uninstalling DWSIM and removing/cleaning the /usr/local/lib/dwsim folder before reinstalling it.

     
  • Steven Baltakatei Sandoval

    edit(20201212T1206Z): I figured out how to save files in Linux via File -> Save As... : you have to make sure the file name you provide ends with the .dwxmz extension (example: my_simulation.dwxmz). I replicated this bug in fresh virtual machines of Debian 10, and Ubuntu 18.04 LTS. I also noticed that the .dwxml extension may also work, producing an xml file larger than what saving with a .dwxmz extension would write to disk.

    Side note: if a proper file extension is not provided (ex: my_simulation.txt), the Log Panel will still display a message saying something like Simulation file successfully saved to '/home/baltakatei/Documents/my_simulation.txt'. even though it wasn't successfully saved.


    I also cannot save a flowsheet. I'm using Debian 10.7 and the problem is with dwsim_6.3.7-amd64.deb. The application reports that it is able to successfully save a file. However, inspecting the directory where the file was supposed to be saved shows nothing. I tested this in freshly installed Debian 10.7 virtual machine so I don't think there was a problem with the contents of the /usr/local/lib/dwsim directory.

    I previously was able to save flowsheets months ago with an earlier version of Debian 10 and dwsim_5.8.10-amd64.deb (dated March 2020). edit: Perhaps there was a change to Debian's policy for how packages are to be constructed?

    I uninstalled dwsim_6.3.7 and reinstalled dwsim_5.8.10 from a saved .deb file I had archived (with the latest version of Mono (6.12.0)). Similarly, I am able to set up a flowsheet but am unable to save it to disk.

    As a workaround, I waited until a backup file was created, then moved and renamed the file. I was then able to open the file as an existing file, make changes and save back to the same file.

    I can confirm that this workaround works for dwsim 5.8.10.

    I also replicated the file save issue with a fresh virtual machine of Ubuntu 18.04 LTS.

    Each successful test on a new install of DWSim has involved installing the latest version of Mono via the /etc/apt/sources.list.d/ instructions at the Mono Project website.

    Please let me know if I can help debug this (is there a way to dump environment variables or debug logs?).

     

    Last edit: Steven Baltakatei Sandoval 2020-12-12
  • Daniel Medeiros

    Daniel Medeiros - 2020-12-12

    Try running DWSIM with

    MONO_LOG_LEVEL=debug dwsim
    

    And see if you get unusual messages after trying to save the simulation.

     
    • Steven Baltakatei Sandoval

      These following lines seem relevant. I took them from the stdout of the command you provided around the time when I clicked to Save As... a file with the name my_simulation.

      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8A'.
      > Mono: Could not find 'g_filename_from_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8'.
      > Mono: Could not find 'g_filename_from_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8A'.
      > Mono: Could not find 'g_filename_from_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8'.
      > Mono: Could not find 'g_filename_from_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8A'.
      > Mono: Could not find 'g_filename_to_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8'.
      > Mono: Could not find 'g_filename_to_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8A'.
      > Mono: Could not find 'g_filename_to_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8'.
      > Mono: Could not find 'g_filename_to_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8A'.
      

      These lines are output from running diff 20201211T125823-0800..dwsim-1.log 20201211T125823-0800..dwsim-2.log | grep 'Mono: Could not' on two of the attached log files. Log files are numbered like so:

      1. -1.log: After startup.
      2. -2.log: After attempting to save a file.
      3. -3.log: After a backup event occurred.
      4. -4.log: After exit.

      The 20201211T125823-0800..dwsim* files are attempting to save the a flowsheet as my_simulation.

      The 20201212T091344-0800..dwsim* files are attempting to save a flowsheet as my_simulation.dwxmz.

      Logs were generated after installing dwsim_6.3.7-amd64.deb and running MONO_LOG_LEVEL=debug dwsim 1>/tmp/$(date +%Y%m%dT%H%M%S%z)..dwsim.log.

      The system is a freshly installed and updated copy of Debian 10 (iso image here) running in Gnome Boxes.

      bktei@debian-dwsim:~$ neofetch
             _,met$$$$$gg.          bktei@debian-dwsim 
          ,g$$$$$$$$$$$$$$$P.       ------------------ 
        ,g$$P"     """Y$$.".        OS: Debian GNU/Linux 10 (buster) x86_64 
       ,$$P'              `$$$.     Host: KVM/QEMU (Standard PC (Q35 + ICH9, 2009) pc-q35-5.1) 
      ',$$P       ,ggs.     `$$b:   Kernel: 4.19.0-13-amd64 
      `d$$'     ,$P"'   .    $$$    Uptime: 15 mins 
       $$P      d$'     ,    $$P    Packages: 1810 (dpkg) 
       $$:      $$.   -    ,d$$'    Shell: bash 5.0.3 
       $$;      Y$b._   _,d$P'      Resolution: 1920x1003 
       Y$$.    `.`"Y$$$$P"'         DE: GNOME 3.30.2 
       `$$b      "-.__              Theme: Adwaita [GTK2/3] 
        `Y$$                        Icons: Adwaita [GTK2/3] 
         `Y$$.                      Terminal: gnome-terminal 
           `$$b.                    CPU: Intel i7-7700T (8) @ 2.903GHz 
             `Y$$b.                 GPU: Red Hat, Inc. QXL paravirtual graphic card 
                `"Y$b._             Memory: 619MiB / 985MiB 
                    `"""
      

      The relevant error messages from saving a file as my_simulation.dwxmz instead of just my_simulation are below. Although the file was written to disk, a similar set of error messages appear:

      > Mono: Could not find 'GetKeyboardLayoutList' due to '/usr/lib/libMonoSupportW.so: undefined symbol: GetKeyboardLayoutList'.
      > Mono: Could not find 'GetKeyboardLayoutListA' due to '/usr/lib/libMonoSupportW.so: undefined symbol: GetKeyboardLayoutListA'.
      > Mono: Could not find 'GetKeyboardLayoutList' due to '/usr/lib/libMonoSupportW.so: undefined symbol: GetKeyboardLayoutList'.
      > Mono: Could not find 'GetKeyboardLayoutListA' due to '/usr/lib/libMonoSupportW.so: undefined symbol: GetKeyboardLayoutListA'.
      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_set_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_set_current_folder_utf8A'.
      > Mono: Could not find 'g_filename_from_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8'.
      > Mono: Could not find 'g_filename_from_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8A'.
      > Mono: Could not find 'g_filename_from_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8'.
      > Mono: Could not find 'g_filename_from_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_from_utf8_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_current_folder_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_current_folder_utf8A'.
      > Mono: Could not find 'g_filename_to_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8'.
      > Mono: Could not find 'g_filename_to_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8A'.
      > Mono: Could not find 'g_filename_to_utf8_utf8' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8'.
      > Mono: Could not find 'g_filename_to_utf8_utf8A' due to '/lib/x86_64-linux-gnu/libglib-2.0.so.0: undefined symbol: g_filename_to_utf8_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8A'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8'.
      > Mono: Could not find 'gtk_file_chooser_get_filename_utf8A' due to '/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: undefined symbol: gtk_file_chooser_get_filename_utf8A'.
      > Mono: Could not find 'GetCurrentPackageId' due to '/usr/bin/mono: undefined symbol: GetCurrentPackageId'.
      > Mono: Could not find 'GetCurrentPackageIdA' due to '/usr/bin/mono: undefined symbol: GetCurrentPackageIdA'.
      > Mono: Could not find 'GetCurrentPackageId' due to '/usr/bin/mono: undefined symbol: GetCurrentPackageId'.
      > Mono: Could not find 'GetCurrentPackageIdA' due to '/usr/bin/mono: undefined symbol: GetCurrentPackageIdA'.
      

      I am having trouble with the wine version linked here but I suspect these are more from me being completely unfamiliar with running anything in wine.

       
      • Daniel Medeiros

        Daniel Medeiros - 2020-12-12

        It seems that GTK in your system doesn't have the "gtk_file_chooser_set_current_folder_utf8" function required by Mono. Not sure if there is a missing library or the library doesn't have this function.

         
        • Steven Baltakatei Sandoval

          The gtk GUI seems to work okay despite these error messages.

          I can save files where I want using the Save As... window if I use the correct file extension (ex: .dwxmz or .dwxml).

          I imagine a simple fix for now would be to automatically append .dwxmz to the user-supplied file name if .dwxmz isn't already present.

           
  • Daniel Medeiros

    Daniel Medeiros - 2020-12-12

    You can also try the wine-enabled version, which is actually the 32-bit windows version running on Linux through Wine.

     
    • Steven Baltakatei Sandoval

      There are some problems involving a file that doesn't exist in the .7z file I downloaded from
      https://dwsim.inforside.com.br/new/index.php/download/ . Here's the story.

      The readme_dwsim_wine.txt file that indicated a command to use to run
      DWSIM.:

      $ sudo apt-get install wine-stable
      WINEPREFIX=$HOME/Desktop/dwsim-wine_v6.4.2/wineprefix wine C:/DWSIM6/DWSIM.exe
      

      For my particular installation on my Debian 10.7 computer, these commands are instead:

      $ sudo apt-get install wine
      WINEPREFIX=$HOME/Desktop/DWSIM/dwsim-wine_v642/dwsim-wine_v6.4.2/wineprefix wine C:/DWSIM6/DWSIM.exe
      

      When I ran these commands I was notified that the installation failed
      due to the absence of wine32. I was suggested to install it by
      adding i386 architecture support (since apparently the wine prefix
      is the 32-bit windows version of DWSIM).

      baltakatei@mycomputer:~/Desktop/DWSIM$ WINEPREFIX=$HOME/Desktop/DWSIM/dwsim-wine_v642/dwsim-wine_v6.4.2/wineprefix wine C:/DWSIM6/DWSIM.exe
      it looks like wine32 is missing, you should install it.
      multiarch needs to be enabled first.  as root, please
      execute "dpkg --add-architecture i386 && apt-get update &&
      apt-get install wine32"
      wine: '/home/baltakatei/Desktop/DWSIM/dwsim-wine_v642/dwsim-wine_v6.4.2/wineprefix' is a 32-bit installation, it cannot support 64-bit applications.
      

      I ran these commands in response:

      $ sudo dpkg --add-architecture i386
      $ sudo apt-get update
      $ sudo apt-get install wine32 -y
      

      The result is that a UI starts up but there are still problems (to be described later).

      Some error messages appear on the command line interface:

      baltakatei@mycomputer:~/Desktop/DWSIM$ WINEPREFIX=$HOME/Desktop/DWSIM/dwsim-wine_v642/dwsim-wine_v6.4.2/wineprefix wine C:/DWSIM6/DWSIM.exe
      002b:err:ole:CoGetContextToken apartment not initialised
      0009:err:combase:RoGetActivationFactory Failed to find library for L"Windows.Foundation.Diagnostics.AsyncCausalityTracer"
      0035:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      0035:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      0039:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      0039:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      0033:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
      Latest Version: 6.4.2
      Current Version: 6.4.2
      Latest Version: 6.4.2
      

      I made it so the err:winediag:SECUR32_initNTLMSP ntlm_auth was not found error disappeared by installing winbind (note: it's not free
      software since it requires proprietary binaries but the DWSIM GUI
      still loads without it. It requires samba so some kind of networking
      program?).

      $ sudo apt install winbind
      [sudo] password for baltakatei: 
      Reading package lists... Done
      Building dependency tree       
      Reading state information... Done
      The following additional packages will be installed:
        python-crypto python-gpg python-ldb python-samba python-tdb samba-common samba-common-bin samba-dsdb-modules
      Suggested packages:
        python-crypto-doc heimdal-clients libnss-winbind libpam-winbind
      The following NEW packages will be installed:
        python-crypto python-gpg python-ldb python-samba python-tdb samba-common samba-common-bin samba-dsdb-modules winbind
      0 upgraded, 9 newly installed, 0 to remove and 2 not upgraded.
      Need to get 4,507 kB of archives.
      After this operation, 24.4 MB of additional disk space will be used.
      

      Installing the winbind package causes this particular error to go away.

      baltakatei@mycomputer:~/Desktop/DWSIM$ WINEPREFIX=$HOME/Desktop/DWSIM/dwsim-wine_v642/dwsim-wine_v6.4.2/wineprefix wine C:/DWSIM6/DWSIM.exe
      002b:err:ole:CoGetContextToken apartment not initialised
      0009:err:combase:RoGetActivationFactory Failed to find library for L"Windows.Foundation.Diagnostics.AsyncCausalityTracer"
      0035:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      0035:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      0039:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      0039:err:winsock:WSAIoctl -> SIO_ADDRESS_LIST_CHANGE request failed with status 0x2733
      Latest Version: 6.4.2
      Current Version: 6.4.2
      Latest Version: 6.4.2
      

      Upon clicking text to create a new flowsheet, an error dialog box
      appears indicating "The method or operation is not implemented" with
      the following details:

      System.NotImplementedException: The method or operation is not implemented.
         at Microsoft.Win32.NativeMethods.SetWindowThemeAttribute(IntPtr hWnd, WindowThemeAttributeType wtype, WTA_OPTIONS& attributes, Int32 size)
         at System.Windows.Forms.VisualStyles.VisualStyleRendererExtension.SetWindowThemeAttribute(IWin32Window window, WindowThemeNonClientAttributes attr, Boolean enable)
         at AeroWizard.WizardControl.ConfigureWindowFrame()
         at AeroWizard.WizardControl.parentForm_Load(Object sender, EventArgs e)
         at System.EventHandler.Invoke(Object sender, EventArgs e)
         at System.Windows.Forms.Form.OnLoad(EventArgs e)
         at System.Windows.Forms.Form.OnCreateControl()
         at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
         at System.Windows.Forms.Control.CreateControl()
         at System.Windows.Forms.Control.WmShowWindow(Message& m)
         at System.Windows.Forms.Control.WndProc(Message& m)
         at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
         at System.Windows.Forms.ContainerControl.WndProc(Message& m)
         at System.Windows.Forms.Form.WmShowWindow(Message& m)
         at System.Windows.Forms.Form.WndProc(Message& m)
         at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
         at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
         at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
      

      Clicking 'Continue', I instead proceed to create a flowsheet to model
      water using the "Stream Tables (IAPWS-IF97)" property package and
      selecting defaults.

      I add a material stream by clicking and dragging and am immediately
      informed of an Error message:

      Error    MSTR-01: Object reference not set to an instance of an object
      

      I click on the MSTR-01 object and see it has no Property Package
      selected. I click on the gear to the right and am given an error
      message: "Object ference not set to an instance of an object". The
      details are:

      System.NullReferenceException: Object reference not set to an instance of an object.
         at DWSIM.Thermodynamics.MaterialStreamEditor.btnConfigurePP_Click(Object sender, EventArgs e) in C:\Users\Daniel\source\repos\DanWBR\dwsim6\DWSIM.Thermodynamics\Editing Forms\Material Stream\MaterialStreamEditor.vb:line 1454
         at System.Windows.Forms.Control.OnClick(EventArgs e)
         at System.Windows.Forms.Button.OnClick(EventArgs e)
         at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
         at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
         at System.Windows.Forms.Control.WndProc(Message& m)
         at System.Windows.Forms.ButtonBase.WndProc(Message& m)
         at System.Windows.Forms.Button.WndProc(Message& m)
         at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
         at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
         at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
      

      Ignoring this message I click "Continue".

      I see that MSTR-01 has temperature, pressure, flowrate, and a compound
      amount that is reasonable. I click "Solve Flowsheet (F5)" to see what
      happens.

      I am given an error message with details:

      DWSIM - Eventn Information
      Event Type: Error (Exception)
      Description: This error was raised during the calculation of a Unit Operation or Material Stream.
      Location:
        Code Location: Calculate (file 'C:\Users\Daniel\source\repos\DanWBR\dwsim6\DWSIM.Thermodynamics\Material Stream\MaterialStream.vb', line 446)
        Calling Method: Calculate (file 'C:\Users\Daniel\source\repos\DanWBR\dwsim6\DWSIM.Thermodynamics\Material Stream\MaterialStream.vb', line 369)
      Mitigation Actions:
        Check input parameters. If this error keeps occurring, try another Property Package and/or Flash Algorithm.
      

      I attempt to create a new flowsheet and choose instead "Peng-Robinson
      (PR)" as the property package but face the same set of error
      messages. The wine prefix directory does not contain any .vb files
      of any sort.

      $ find ./dwsim-wine_v6.4.2/ -iname "*.vb"   # this yields nothing
      

      I am unable to create a flowsheet.

      I think I'll stick with using my previous method.

       
  • Daniel Medeiros

    Daniel Medeiros - 2021-01-29

    Not sure if Debian 10.7 is missing some packages, but you didn't need to install anything other than wine. I'm running it on Ubuntu 16.04 and wine 3.0.4, it works perfectly even if there are some warnings on the console...

    The debug information displays the source code file and line where the error happened. The path of the vb file is relative to my computer, where DWSIM was compiled. It helps me to go straight to such code line in order to fix the bug, if that is the case.

     
    • Steven Baltakatei Sandoval

      I'm not sure I can install wine 3 (or later) on Ubuntu 16.04 from the WineHQ repository anymore. Did you mean Ubuntu 18.04? The most recent version of Ubuntu mentioned on the WineHQ.com download page is Ubuntu 18.04. Also, a fresh and upgraded installation of Ubuntu 16.04 only has wine 1.9.6 (see screenshot).

      (I'm mostly posting this in case someone in the future wants to try the wine path; I'm mostly happy with the .deb of DWSIM, so long as I remember to append .dwxmz to flowsheets I save.)

       
  • Daniel Medeiros

    Daniel Medeiros - 2021-01-29

    I believe that you need to add a custom repository to install the latest version, just like it is done with mono. https://wiki.winehq.org/Ubuntu

     
  • Daniel Medeiros

    Daniel Medeiros - 2021-01-29

    The advantage of the wine version is that you can add CAPE-OPEN objects to the flowsheet, including ChemSep separation columns, which will never be possible with the "native" Mono/GTK version, unfortunately, as CAPE-OPEN is only supported/available on Windows systems. This is not a limitation of DWSIM, but rather a design decision from the developers of the other components.

     
  • Steven Baltakatei Sandoval

    I got DWSIM 6.4.2 to run in Wine 3.0 running within Ubuntu 18.04 LTS running as a virtual machine within GNOME Boxes 3.30.3 running on Debian 10.7 (see attachment). No messing with /etc/apt/sources.list.d to add custom package repositories was necessary to install Wine 3.0. The commands as written in the readme_dwsim_wine.txt instructions within the wine prefix .7z file worked perfectly to install wine-3.0and to run DWSIM. Ubuntu 18.04 LTS was installed from the 18.04.5 LTS iso available on the Ubuntu website's Alternative downloads page.

    The commands used once Ubuntu 18.04 LTS was installed were:

    $ sudo apt update && sudo apt upgrade -y
    $ sudo apt install wine-stable
    $ sudo apt install p7zip   # install 7zip decompressor
    $ p7zip -d dwsim-wine_v642.7z    # decompress
    $ mv dwsim-wine_v6.4.2/ ~/Desktop/
    $ WINEPREFIX=$HOME/Desktop/dwsim-wine_v6.4.2/wineprefix wine C:/DWSIM6/DWSIM.exe
    

    The specific version of wine installed by this method was wine-3.0 (Ubuntu 3.0-1ubuntu1).

    I now see that the Windows version of DWSIM automatically appends the .dwxml, .dwxmz, or .xml file extensions in the Save As dialog (a feature missing from the Mono/GTK version).

    Now I can describe a free/open source way for a thermodynamics student to play with mass and energy balances in an environment that closely resembles how I learned to play with such models with VMGSim.

    Thanks for your attention. o7

     

Log in to post a comment.