[vtk-developers] Porting of VTK to Mac OS X

Andrew Cunningham andrewc at vasci.com
Tue Nov 28 16:30:09 EST 2000

This is a note to anyone interested in a Mac OS X ³port² of VTK .

With this post I am trying to start a thread going on the vtk-developers
list so that resources can be pooled and effort is not duplicated.
Although I am posting this to vtk-users as well , please follow-up on

Mac OS X , which is currently in public beta, is Apples next generation Unix
based OS that is a complete break from ³classic² MacOS.

OS X is a ³real² Unix with a BSD foundation (open source 'Darwin') on a Mach
kernel. The freely downloadable developer tools include gcc, gdb etc etc, so
that porting, say, Œm4¹, can be as simple as popping open a ³tcsh² terminal
window and entering ./configure;make.

The major departure from your traditional Unix for graphics is that OS X
does not use X11. The underlying graphics subsystem is called ³Quartz². The
native application building environment is called ³Cocoa² and is written in
Objective-C. Hardware accelerated OpenGL is fully supported.

Anyway, my analysis so far is that porting VTK to OS X can be done in two

1. Get X11/GLX is running on OS X. Then ³porting² VTK is simply a re-compile
with a couple of changes to deal with the quirks of OS X ( for example
configure never understands dynamic libs on OS X are .dylib)
There are two possibilities here as well. The easiest and most expensive is
to use Xtools from Tenon , a commercial port of X11R6 including FULL
hardware accelerated OpenGL integration. The cheapest and most time
consuming is to use a freeware X11 implementation and Mesa. This will not
give you hardware OpenGL (yet)

  2. Integrate VTK into  the Cocoa/Quartz environment using native Cocoa

Ultimately, both solutions are possible and can co-exist.
 1) will be better if one expects to need to use code that already mixes X11
and VTK. 2) Will be better for someone wanting to write a VTK app that is a
proper ³Cocoa² application.

Andrew Cunningham
Vibro-Acoustic Sciences Inc
mailto: andrewc at vasci.com
(858) 350 0057 x105
Intl: +1-858-350 0057

More information about the vtk-developers mailing list