XCircuit for Windows 95/98/NT


Warning! Not for the faint of heart.


XCircuit has been (mostly) successfully compiled under Windows 98. This is a complicated task involving downloading open-source dll's for running UNIX and X11 APIs on top of Windows (sounds ugly, and probably is). Probably the main sticking point is the requirement of an X server (see below). Anyone who tries this path is requested to give some feedback so that this page can be expanded to include results of compiling for other combinations of OS versions and X servers.

Many, many thanks to Prof. Dr.-Ing. Holger Vogt at Fraunhofer-Institut IMS in Duisburg, Germany (hvogt@ims.fhg.de) for being the first to try this path (or at least the first to try it, be generally successful, and tell me about it) and for providing the detailed instructions below.

Note the short list of bugs listed at the end. If you find any bug fixes, please send them on.


Precompiled xcircuit for Windows:

This is the simplest route to an install. The zip'd directory contains all of the DLLs required to run, so that you do not need to deal with downloading Cygwin or the rest of the environment which was required for the original source compilation. Follow the instructions, and hopefully everything will install and run smoothly.

Instructions for Compilation from Source and Full Installation:

These instructions are already getting out of date. I will try to bring them up-to-date with the latest information on Cygwin and XFree86. Stay tuned!

To run xcircuit, you need at least the cygwin1.dll, which belongs to the UNIX port to 32-bit Windows B20.1 from Cygnus. The source can be obtained from either of the following: XSET, XMODMAP, and XRDB will be used to include resources. These programs can be obtained (for free) from the following source: http://dao.gsfc.nasa.gov/software/grads/win32/X11R6.3/. They are also included as part of the Cygwin XFree86 installation (see below), if you are using the XFree86 X server.

Microimages Mix/2 (http://www.microimages.com/mix/) is the Xserver used and tested in this installation. It runs on Windows98. Numerous other X servers have been tested. Commercial X Servers tend to work more smoothly than the XFree86 server, because they integrate seamlessly into the Windows background, so X windows pop up on the desktop just like Windows windows.

New free Xservers are becoming available but have been tested only sparsely. The most common free X server is the XFree86 server distributed with the Cygwin distribution. Apart from running X protocol in its own window, it works quite well. Hardware acceleration seems to be supported only for a few video cards. Note that the batch file which comes with the distribution assumes a commercial X server running applications directly on the Windows desktop. For XFree86, it will be necessary to explicitly start up the X server from within the batch file. A sample batch file is shown below:

  @echo off
  SET PATH=.;%PATH%;D:\cygwin\bin;D:\cygwin\usr\bin;D:\cygwin\usr\X11R6\bin;C:\xcircuit-2.3.3\bin
  SET DISPLAY=127.0.0.1:0.0
  SET XCIRCUIT_LIB_DIR=C:\xcircuit-2.3.3\lib
  start /B XWin -emulate3buttons
  run twm
  run xterm -e xcircuit
  
This batch file assumes that the Cygwin distribution is rooted at D:\cygwin and that the XCircuit distribution has been installed in C:\xcircuit-2.3.3. You will want to make necessary changes to match your environment. The "start" command is part of the Cygwin distribution. The "run" command is included with the XCircuit distribution. Therefore, all components of the PATH variable will need to be included.

See the Cygwin/XFree86 page for the XFree86 download (requires installation of Cygwin).

Other successfully tested Windows platforms and X servers:

Edit C:\xcircuit\xcir_mix.bat to include correct paths to Cygwin and X11. The geometry of Mix/2 and Xcircuit is adapted to a 17" screen with Microsoft symbol and Office shortcut bar added. Change the geometry in xcir_mix.bat if appropriate.

Within Windows Explorer: After right-clicking, go to C:\xcircuit\xcir_mix.bat and send an icon to the desktop. Right-click the icon, and rename it to "xcircuit". Right-click the icon and change its properties: Go to "sonstiges", uncheck "Immer vorrübergehend aussetzen" (please note that in the English Windows version of command.exe you should change the equivalent entries).

PC peculiarities:

With a two button mouse, you may choose left-click for button1, shift-left-click for button 2 and right-click for button 3. See tutorial 13.12: "tapping on top" will not work as stated; creating a selection box with shift-button 1 is okay.

(Bindings can be reassigned, including moving button functions to keys. I will post information on this procedure shortly.)

Bugs remaining: