Windows

From Madagascar
Jump to navigation Jump to search

Madagascar has been run on Microsoft Windows machines under various types of environments:

Windows Subsystem for Linux[edit]

Windows Subsystem for Linux (WSL) is a compatibility layer (available on on Windows 10 and Windows 11) that allows Linux applications to run natively under Windows.

To install Ubuntu Linux using WSL, follow https://ubuntu.com/wsl , then follow instructions for installing Madagascar under Ubuntu.

Cygwin[edit]

Madagascar can run under Cygwin, which provides a Unix environment under Windows.

To obtain Cygwin, go to its web page, download and run the installer. This should create a Cygwin program, which when run, creates a POSIX shell window similar-looking to the Windows command window but which behaves in a more Unix-like way.

NOTE: If you are unfamiliar with Unix-like systems, a good place to start is Greg Wilson's Software Carpentry course.

You will need to install several additional Cygwin components before Madagascar can run. To get these, rerun the installer program (called Setup and represented by an icon with a black "C" shape enclosing a green arrow).

  1. Start Setup program.
  2. Keep clicking (defaults should work, but you can choose a mirror on your own continent) until you see a collapsed list (boxed "+" signs) in a selection box.
  3. Choose the following before downloading.
    1. Open the Devel section and select
      • gcc-core
      • gcc-g++
      • gcc-gfortran
      • make
    2. If you want to use the development version of Madagascar, also choose one of the following:
      • subversion
      • git
    3. Open the Libs section and select
      • libtirpc-devel
      • libXaw-devel
      • libX11-devel
    4. If you have a favorite unix editor, choose it under Editors (novices may wish to work with Notepad for a while). Both vim and emacs are available.
    5. Open Interpreters and select
      • python
    6. For X-window display with oglpen, open X11 and select
      • libglut-devel
      • libGLU-devel
    7. If you intend to use LaTeX, open Publishing and select
      • texlive
      • texlive-collection-latexextra
      • texlive-collection-fontutils
    8. If you intend to use ppmpen, open Graphics and select
      • libnetpbm-devel
    9. If you intend to use tiffpen, open Libs and select
      • libtiff-devel
    10. If you intend to use gdpen, open Libs and select
      • libgd-devel
    11. For Xwin server installation, open X11 and select
      • xinit
  4. Next, click Next>
    Your download will proceed.
  5. When done, click Finish.

After performing this steps, proceed to a normal Madagascar Installation.

For running X applications such as xtpen, make sure to run startx first to open an X terminal window.

Troubleshooting[edit]

If you get errors "unable to remap...", note the following:

A proper work of a Cygwin installation may require running rebaseall, a program that fixes library dependencies. You only need to run it once.

  1. Quit all Cygwin processes
  2. Start ash (<cygroot>\bin\ash.exe)
  3. Execute /usr/bin/rebaseall

Screenshots[edit]

  • Running Cygwin's setup program

  • Selecting packages

  • Running Cygwin's bash program

  • Testing Madagascar installation

Matlab API[edit]

To use the Matlab API with Madagascar under Cygwin, make sure you have Mex installed, and create a symbolic link, i.e.: <bash> ln -s /location/of/mex.bat /usr/bin/mex </bash>

Interix (outdated)[edit]

Interix is the name of the Unix environment for Windows provided by Microsoft through the following software packages:

SSH + X server[edit]

If you can count on a network connection to a full UNIX machine while you run Madagascar, you actually need to install under MS Windows just a SSH client and a X server, and just run the Madagascar installed on the UNIX machine. Cygwin provides both, but it is big and slow. Faster and more lightweight alternatives are:

  • MobaXterm, an enhanced terminal with an X server and a set of Unix commands (GNU/Cygwin) packaged in a single portable exe file;
  • Xming as X server and PuTTY as SSH client (remember to check the "Tunnel X11 connections" box when saving the session configuration).