Skip to content

GeoDMS on Linux

mtbeek32 edited this page Jan 3, 2023 · 31 revisions

Install Wine

In order to run GeoDMS on Linux systems, you need the WINE-environment. This environment can be downloaded from the WineHQ website, or through a package manager. Instructions for installing on Debian-based distributions are listed below.

Install from Apt-repository

Add the official WineHQ repository channel

For Debian-based systems, add the official WineHQ repository to linux, by issuing the following commands from a terminal prompt (Note: An internet-connection is needed for this to work):

$ sudo dpkg --add-architecture i386
$ wget -nc https://dl.winehq.org/wine-builds/winehq.key
$ sudo apt-key add winehq.key

If you are using Ubuntu, run:

$ sudo apt-add-repositoryhttps://dl.winehq.org/wine-builds/ubuntu

For Linux Mint 19, run:

$ sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ bionic main'

If you are using Linux Mint 18, run:

$ sudo apt-add-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ xenial main'

For Debian systems, add the following line to your /etc/apt/sources.list, or add a list file to /etc/apt/sources.list.d/, consisting of this line:

$ deb https://dl.winehq.org/wine-builds/debian/ distributionmain

Note: replace distribution with the name of your distribution (E.g. stretch, jessie, wheezy or sid).  See your /etc/debian_version if you are not sure about your current Debian version.

Installing the WineHQ package

For all these Debian-based distributions run:

$ sudo apt-get update
$ sudo apt-get install --install-recommends winehq-stable

Assert that the install was successful, and then test Wine by starting Notepad.exe like so:

$ wine notepad.exe

You will probably be prompted to install the Mono runtime and Geckopackages (possibly even twice). Install these packages and confirm that the Notepad application runs.

Installing GeoDMS

Download the desired GeoDMS version from releases and execute the following command from the directory where you saved the setup program:

$ wine GeoDms7182-Setup-x64.exe

Note: the filename of the setup program will vary for different versions of GeoDMS

Running GeoDMS

If Wine is installed successfully, you should be able to start the GeoDMS GUI with the following commands:

$ cd ~/.wine/drive_c/Program\ Files/ObjectVision/GeoDMS7182/
$ wine GeoDmsGui.exe

Note: If you are using the 32-bit version of GeoDMS, you should use ~/.wine/drive_c/Program\ Files\ x86/ObjectVision/ etc. instead.

Known Problems

When opening .dms configuration files, you will notice errors. These errors possibly have to do with incompatibilities in the Multi-threading DLL's supplied with Wine.

Testing & debugging using Wine

It's best to primarily test with the GeoDmsRun.exe, to make sure that runtime-problems don't stem from GUI-elements. Only when tests using GeoDmsRun.exe are running smoothly, should you test using GeoDmsGui.exe.

Wine supports extensive debugging features. These can be activated using the following command-line syntax:

$ WINEDEBUG=+relay,+seh,+tid,+loaddll wine GeoDmsRun.exe [/LLogFileName] {ConfigFileName} {ItemNames} > {DebugLogFile} 2>&1

Notes:

  • [/LLogFileName] is optional
  • {ConfigFileName} and {ItemNames} should be provided as normal when using GeoDmsRun.exe
  • The > part is a Linux shell-directive to redirect the output of the process to the file specified after >. You could ofcourse leave this (and everything following it on the command-line) out, so that the output will be to the terminal instead, but that will cause a lot of output scrolling by quickly. It is also possible to use >> in order to append to that file (using > will overwrite each time the command-line is executed), but please note that repeated runs of the command-line using the append-directive may quickly result in a very big output file!
  • {DebugLogFile} is a path to a file that will be used for the (rather extensive!) Wine debugging output
  • The final 2>&1 is a Linux shell-directive to redirect both STDERR and STDOUT to the same location, being the output file specified as {DebugLogFile}

You can find more information on the available Debug Channels for Wine here

Clone this wiki locally