Building and Geomview under Windows
SaVi and Geomview run under a unix environment. If you only have Microsoft Windows to hand, you can run SaVi and Geomview under the Cygwin environment in Microsoft Windows, as this screenshot of Cygwin running SaVi and Geomview demonstrates.
Here are instructions on installing Cygwin and Geomview under Microsoft Windows. Cygwin's own installer instructions will get you started.
Cygwin has now transitioned from Insight Tcl to the Tcl/Tk used in
usual unix-like distributions. SaVi 1.4.6 supports this change.
Note: the Cygwin developers made major changes to their X server distribution in November 2008. Prior to those changes, Cygwin's X server supported hardware acceleration, and Geomview use was robust and reliable. After those changes, robustness, reliability and hardware acceleration have suffered. You can launch geomview with
geomview -noopengl (or configure before compiling without specifying
--with-opengl) for slow reliability.
At this point, it may be preferable to run VirtualBox, install a debian-based Linux such as Ubuntu from a downloaded ISO disk image, then
sudo apt-get install geomview (which is also in the Synaptic package manager) and install the SaVi package.
Questions about installing Geomview under Cygwin can be taken to the Cygwin and Geomview users mailing lists.
- Install cygwin and its packages using the net installer you can download from http://www.cygwin.com/. Along with all the packages installed by default, you will need to install a minimum of:
- Under the Devel category:
byacc (only if you're a developer planning on building from Geomview's CVS repository.
ln -s /usr/bin/byacc /usr/bin/yacc)
gcc-g++ (cc1plus is used)
libiconv (only needed for xforms 1.0.91)
minires-devel (replaces libresolv) - may no longer be needed, no longer available in Cygwin.
- Under the Graphics category:
opengl (if building with OpenGL)
- Under the Libs category:
libjpeg-devel (only needed for xforms)
tcltk, needed for some Geomview modules and for SaVi.
- Under the Text category:
- Under the X11 category:
If Cygwin has not installed X11 by default, you can install
libGLU-devel (if building with OpenGL)
libXm-devel - also needed for Tcl/Tk and SaVi.
libXm2 (one of lesstif or libXm will provide Motif support)
xorg-x11-devel (for some required libs and includes)
xterm to bring in X11 and all dependencies.
- If also building SaVi, under the Libs category:
tcltk libraries for use with SaVi. These libraries are also used by other Geomview modules. Although SaVi does not require X itself, the tcltk libraries that it depends on do, so you will also need to install
libX11-devel, as noted above, if it has not already been installed, in order to compile SaVi with Tcl/Tk.
Do not attempt to install Tcl/Tk yourself. Use the option in the Cygwin installer. That is what SaVi expects, and it will allow SaVi to run with the Tcl/Tk supplied with Cygwin
without launching X.
Note: Use Cygwin base 1.5.20-1 or later. Geomview does not compile on Cygwin base 1.5.19.
- Launch cygwin, and prepare to type commands at its bash shell prompt. As Geomview requires X to run, it makes sense to launch the X server and work in an xterm window, which provides ctrl-mouseclick menu configuration options for left-, right-, and middle-click. (You may need to alter e.g. trackpoint preference in the Mouse control panel to access the ctrl-middle-click menu.) If you have launched Cygwin's bash shell, type
startx in the cygwin window to launch the X server. This will bring up an xterm window that you can now use to type all commands in. (If the
startx command fails, try
xinit -- -multiwindow.)
- Download the Geomview 1.9.4 release.
This release builds easily with modern compilers, and is far more robust in pipe and I/O communications than the previous 1.8.1 release. With SaVi, this can make working with piping of cone and footprint LISTs to Geomview much more reliable. (Should you choose to pull a more recent Geomview from CVS, you will need to run the top-level reconf script to attempt to generate some files already built in official releases. reconf requires the autoconf, automake, and libtool development tools - see the README.cvs file.) Use the 1.9.4 release!
- Unpack e.g. geomview-1.9.4.tar.gz with:
tar xfvz geomview-1.9.4.tar.gz
to create a local folder. That folder becomes the working directory for the following instructions.
Alternatively, you could pull a Geomview CVS snapshot from the sourceforge CVS
head. You will need to run ./reconf to generate a configure file and Makefiles before running ./configure and make as detailed below. ./configure and Makefiles are not stored in CVS.
- This step is optional and only needed to use all of the interesting included Geomview modules: get xforms (from http://savannah.nongnu.org/projects/xforms where you download
and save a copy in the geomview directory. xforms requires
libXpm installed. Unpack this with e.g.:
in the geomview-1.9.4 directory. Then do:
- tar xvfz xforms-1.0.90.tar.gz
xforms is not required by SaVi.
- mv xforms-1.0.90 xforms
- cd xforms
- make install (does not require superuser access on Cygwin)
- cd ..
- Build a local copy of Geomview with the following commands:
configure and make both take a while - be patient.
- MOTIFLIBS='-lDtPrint -lMrm -lXm -lXt -lXmu -lXp -lXext -lX11 -lSM -lICE'
- ./configure --with-motif --with-opengl --with-xforms
(--with-xforms= can also take an absolute path, but this is not needed if you did a make install to install xforms in the expected place. If you are not building with xforms, omit the --with-xforms). If you have problems with building with OpenGL, leave out the --with-opengl=/usr/X11R6 to get to a working Geomview.
- If you haven't already, click on Cygwin's xterm icon in the Start Memnu program list, or execute startx to spawn the X server and desktop display and get an xterm console window. (An alternative is
xinit -- -multiwindow -clipboard for better integration with Windows.) Alternatively, on older Cygwin, run startxwin.bat to launch individual X windows as Windows windows.
Once you have an xterm on screen, then run:
in the spawned xterm window that knows it's part of the X display, rather than in Cygwin's initial console window, to check that Geomview works.
- You can then put a working copy of Geomview in /usr/local if you desire, with:
- Unpack and make a copy of SaVi in a local directory. See the instructions in SaVi's README file and on
building SaVi 1.4. You will be typing:
in SaVi's topmost directory.
- Run Geomview and SaVi together from the Geomview directory with:
./geomview -run $SAVIDIR/savi
(replace $SAVIDIR with the absolute location of the SaVi directory.)
Though SaVi could be ported to Microsoft Windows and use a native Tcl/Tk interpreter there, there is no native Geomview for Microsoft Windows, so SaVi would have to be modified to output to a different 3D renderer or directly to OpenGL. Cygwin lets SaVi and Geomview run in the Microsoft Windows environment.
These instructions are based on original instructions and work by Matthias Foehl and advice from Belinda Marchand, Will Wray and Brad Barber, with thanks.
this page last updated 13 May 2013