VNC logo

Virtual Network Computing

[getting started]
[keep in touch]
Others' ports and add-ons etc
Project ideas
VNC people
[AT&T Laboratories Cambridge]

VNC on other platforms & environments

VNC is available for many platforms beyond just the ones we use at our lab. On this page you will find information about a huge number of other operating systems and environments for which at least some part of VNC has been ported. Sometimes there are links to other web sites, often with binaries available. In other cases you'll find details about how to modify the standard source code to get it to compile.

We prefer not to distribute binaries directly from our web site for platforms we cannot test here, but we are happy to put links to sites which do, and we are grateful to all the contributors. If you port VNC to a new environment we would be grateful to hear about it; please post such announcements to the mailing list.

Linux RPMs & Debian packages
EPOC (Psion)
Geos (eg. Nokia 9000)
HP Jornada
Java VNC server
MacOS X VNC server
MacOS X Xvnc
MacOS VNCThing (alternative viewer)
MacOS alternative VNC server
Palm devices (PalmPilot, Palm III, etc)
RedHat Linux 6.x
SCO OpenServer
SGI Irix
SunOS 4.1.3
SVGALIB (Linux without an X server) & Single-floppy Linux
Windows CE
Windows NT/Alpha

Linux RPMs & Debian packages

Other people have kindly packaged VNC up in RPM and Debian package form; see for example under 'V' at the RPM archive   and at .  Note that these may not be identical to the standard AT&T distributions, and may not be updated as frequently, so you should check the main VNC site frequently.


We've been told you can get VNC for AIX from

Also IBM is including AIX 4.3.3 and AIX5L VNC binaries and source in it's AIX Toolbox for Linux applications at


We know of two viewers for RISC OS.

The first, created by, is available from .

The second, by Leo White <> is at .

A server for RISC OS is also available from


VVA - a VNC viewer for the Amiga. which was started by Jörg Dietrich is now being maintained by Denis Spach . See his web page for more details.

Stéphane Guillard - writes:

I have set up a (incomplete, but usable) Amiga VNC server, which can be found on Aminet (, as comm/tcp/AmiVNC.lha (ie. here).

This is a work in progress.


Andreas F. Bobak writes:

Yesterday, I made a first port of the VNC viewer to the BeOS. I mixed together the Win32 viewer and the Unix viewer and added a bunch of BeOS specific stuff. It basically works but perfomance does scream. RRE encoding is broken and Hextile encoding has a strange bug, but it's usable with just CoRRE and CopyRect.

A snapshot of the sources and a x86 binary can be found under


-- Andreas F. Bobak


Kurt Seel <>   writes:

vnc compiles cleanly on bsdi 3.0 (no patches) with the following
pecuiarity - socket.c and httpd.c had to be ifdef'ed like so :

#ifdef __bsdi__
#include <sys/time.h>
#ifdef __bsdi__
#define _ANSI_SOURCE 1

It seems to work fine. The switch to xfree 3.3.2 really did some good here!


Valery Tulnikov has built the server and viewer under Cygwin-32, based on the 3.3.1 patches by Sergey Okhapkin.  This allows you to run the X viewer and server under Win32. Yes, there are some good reasons why you might want to do this! See for more info.


Marinos J. Yannikos <> has written a VNC viewer which runs under DOS, using packet drivers and the Waterloo TCP/IP library along with the Allegro graphics library.  The whole system including the IP stack fits comfortably on a floppy disk.  You can get it from here. .

EPOC (Psion)

We know of two versions of the java viewer to download for EPOC.

Steve Allam <> writes:

Back in February, I first tried the VNC Java client on my Psion Netbook. It worked quite well, although you had to do nasty command line stuff,- on a psion that doesn't have a command line by default.

So, I have added two fields; one for the host and the other for the port. I've also added a help screen that tells you how to move the screen around - i.e the psion screen behaves like a window on the larger VNC screen.

The whole thing is packaged as an SIS file, and can be downloaded from: in the downloads section, at the bottom.

The reason I have taken so long it that I've only just got around to rebuilding the SIS file using a proper psion UID number! I will be changing the host/port display to make this a combo box, that saves previous servers, at some point.

Giuseppe Lo Presti <> has an alternative:

Starting from the Java 1.1 code for the VNC viewer, I packaged an EPOC application so that the viewer can be run easily from any palmtop which support a Java VM (Psion 5mx & compatibles). It was tested on the Psion Series 5mx, Series 7, Netbook, and the Ericsson MC218, and it works with any Internet connection. More information and a downloadable vncviewer.sis file at


Joe Evans <> reports:

I compiled the VNC stuff on FreeBSD 2.2.5, and it seems to work fine. The only compile glitch was that you need to remove the gnumalloc library from the extra libraries list in order to do the link step.

Bruce Mah < > adds:

vnc is now a part of the FreeBSD ports collection...on FreeBSD 2.2.7-RELEASE or newer with an installed ports collection, the installation process is simply:

  cd /usr/ports/net/vnc
  make install

Geos (eg. Nokia 9000)

 Marcus Groeber < > writes:

I have just uploaded the first public version of the VNC Viewer for Geos
to my home page. Have a look at

It allows you to access VNC servers from machines running Geos 3.0,
which would be either a Nokia 9000/9000i/9110 Communicator, a desktop PC
running NewDeal Office 3.0, or a Brother GeoBook notebook.



Steve Cheng writes:

libGGI is a portable graphics library with a flexible design.  See <> for details.   The graphics application can betransparently "retargeted" to different types of displays including X11, Linux svgalib and fbcon. (Win32 soon to come.) The VNC targets adds the VNC protocol to this list.  You can even run doom over VNC! :-) 

Standand VNC clients can be used with the VNC target/GGI application as the server.

You can get it here: <

Untar it under degas/lib/libggi of the GGI devel tree. (The stable GGI tree won't work because of namespace changes,etc.)

A long while ago someone wanted a "stripped-down version of the server part - one that skips listening/authentication phase and just uses stdin/stdout for the communication (run-once application)."  This is not currently done yet, but I have made it easy to do so.  The only problem is the libGGI application trying to use stdin/stdout.

[The VNC team] have asked me not to distribute this as part of libGGI (yet). (It has GPL'd code; the other parts are LGPL as the rest of LibGGI).  So it won't be
in the GGI CVS tree now.

Bug reports, fixes, and feedback welcome.


Several contributors here. We'll thin these out soon.

Stephen Walton <> who previously posted a detailed message entitled Building VNC 3.3.3 on HP-UX 10.20 has now also provided some HP/UX binaries. These are available at: Stephen sent us this README

Karl Hakimian <> wrote about his experiences building 3.3.2:

HPUX did not go as smoothly as some of the other OS's that have been reported, but I did manage to get things to compile under hpux 10.20.

First I had to change Xvnc/config/cf/

Same as for 3.3.1, I made sure the following were set

#define ExtensionOSDefines -DHPINPUT # -DXTESTEXT1
#define XhpServer NO
#define BuildXInputExt NO

#define BuildPex NO
#define BuildPexExt NO
#define XvncServer YES

I also had to change the following to NO
#define NeedBerklib NO

That got things most of the way compiled. I then could not link Xvnc becuase of several missing objects


Turns out I just needed to include sys/resource.h to two files in the programs/Xserver/os directory, the following patch takes care of that. (Karl's short patch is here)

Karl Hakimian

And Mike Cooke writes:

Just to inform you I've managed to build the vnc suite on the following HP box HP-UX <name> B.10.20 E 9000/879

I had major problems trying to build it with the standard HP tools and after much head banging and source editing, I decided to forget it and switch to gcc which worked after about the 3'rd build. I applied the patches as advised in the contrib section on your site.

The only further problem I had was getting the Xvnc server to recognize the correct fonts - somehow the aliasing config here seems a bit odd, so to get around that problem I just ran the x font server and it solved all the problems.

And Ulrik Dickow <> adds:

This evening I succesfully built vnc-3.3.2r3 on HP/UX 10.20 9000/712 with the
HP ANSI C compiler.  I first naïvely tried

  make World
  cd Xvnc
  make World

without any modifications to the source files, but this gave lots of errors
in the Xvnc compilation.  Then I changed with Karls modifications from
vnc/platforms.html and changed the two C files that his "short patch"
mentions (but in a slightly improved way).  This compiled succesfully, with
only harmless warnings.  To make it easier for others to build on HP/UX 10,
I've attached the resulting "jumbo patch" to this mail.

It would be even easier if the changes were permanently done to the master
source.  They don't affect other platforms than HP/UX, and I guess they'll
help HP/UX 9 and 11 users too, won't they?

To complete the help for fellow HP/UX'ers, the second attached patch modifies
a few lines of the vncserver Perl script to

  a) start a CDE session if possible, otherwise fall back to the old code

  b) set the `-fp' argument reasonably for HP/UX (the CDE script will add
     more to this path).

Due to b), the second patch should *not* be applied to the general
distribution, although a) might be.

If somebody have problems with these plaintext unified diffs, I can provide
context diffs instead, possibly in base64 or uuencoded form.  I start out
with unified diffs, since they are much shorter and much more readable in
this case.  Apply them in the top vnc source directory like this:

  patch -p1 < vnc-3.3.2r3_unix.ukd-kh-hpux-patch
  patch -p1 < vnc-3.3.2r3_unix.ukd-hpux_specific-patch.txt

Long live GNU patch(1) (

Thanks to ORL for conceiving a great product, and to Karl for finding out how
to compile it on HP/UX 10.  BTW, I compiled on a machine with these bundles
installed, as part of an upgrade from 9.0x:

  B3393AA_APZ B.10.20.02 HP-UX Developer's Toolkit for 10.0 Series 700 
  B3898AA_APZ B.10.20.02 HP C/ANSI C Developer's Bundle for HP-UX 10.20 (S700) 
  B3910BA_APZ A.01.00    HP aC++ Compiler S700 

Ulrik's patches are at

Ulrik also pointed out that some HPUX distributions don't include xmkmf and imake, but that you can get both source and binaries for them from

HP Jornada

See Windows CE below

Java VNC server

Tal Liron < > has written a VNC *server* (not client) in Java, called VNCj. It is still in an early stage, but essentially works. Available at

KDE has built a version of the viewer which fits nicely into the X-based KDE environment. 

See for details.

Richard Moore writes:

I've just released the first version of Keystone, a VNC client for KDE 2. The program has a homepage at It is currently available through the KDE CVS snapshots and will hopefully be included in the next KDE 2 beta release. It is in the kdenetwork package. This program supercedes the KDE 1 program kvncviewer which you already have listed on your site.


You can get source and binary RPMs for LinuxPPC from

MacOS X VNC server

Dan McGuirk <> writes:

I've managed to hack together a VNC server for OS X, starting with the Xvnc code. (It's a native server--it reflects the OS X Aqua desktop over VNC.) It's still got a few rough spots, but mostly it works pretty well. I put up a web page for it at:

MacOS X Xvnc

Jeff Whitaker <> writes:

I've created a patch that allows Xvnc to compile and run under MacOS X. Details at

MacOS VNCThing (alternative viewer)

Dair Grant <> has written an alternative Macintosh viewer which supports the Appearance Manager and Navigation Services, which means it looks more attractive on recent versions of MacOS. You can find it at

MacOS alternative VNC server

Jonathan Morton <> has written an alternative Macintosh server. You can find it at


Era eriksson <> wrote to tell us that information about a NetBSD port for i386 is available at


Ralph Siemsen <> writes:

I've "ported" the server and client portions of your VNC package to our NetWinder platform (an ARM-based linux system).  There are only minor changes necessary that stem from the fact that your package tries to rebuild "imake" itself - but is isn't aware of the arm platform.  I've attached the patch below; it is against vnc-3.3.2r3 for unix. 
... We'll be providing binaries from our web site for NetWinder owners..

Ralph's patch is available at


Steve Weyer <> has created newtVNC (a Newton VNC viewer and server).

See or


John Stout and Andre Fischer wrote to tell us of an Oberon VNC viewer. Andre writes:

We have also written an Oberon VNC client that is now used on most of our laboratory PCs. A first glance can be taken from .

The software is at

Note: The VNC01.Arc is an (proprietary) Oberon archive to install in Oberon. You will find installation and usage instructions in

And John said... should give a reasonable system for low end machines. It needs what's called the Gadgets system so I don't think it would run off a single floppy, but certainly lower requirements than W95, MacOS, etc. There is a Native Oberon implementation for Linux so I assume it should work under that.

The link is at:


Jonathan Schneider <> writes that he has built VNC successfully under OpenBSD 2.5 on both i386 and sparc by doing little more than creating a symbolic link from /usr/lib/X11 to /usr/X11R6/lib/X11. Either GNU make or BSD make will work. He needed a 'make -k' to get around the fact that there is no '' provided. He writes:

I've a slight gripe in that on the IPX at least, "make install" puts loads of stuff into /usr/lib/X11/config* which already existed in /usr/X11R6/lib/X11/config. I imagine that's desirable if there isn't already an X server installation but scary if there is (and it had used the correct directory).


David Young ( writes:

I've written a client for OPENSTEP/Mach (that spiffy NeXT OS) for VNC.

It currently supports display at 24, 12, and 8 bpp, mouse and mostly-functional keyboard input (ASCII and control characters work; the mapping isn't yet complete and I'm looking for suggestions on how to complete it), and some other client-side niceties. Encodings other than raw are on their way, as is NSPasteboard integration.

I'm looking for users (preferably with VNC and OPENSTEP experience) who can bang on this client on original NeXT boxes, Intel machines, or SPARCstations running OPENSTEP 4.2, or just people who might find it useful at this early state.


Akira Hatakeyama <>is working on a native PM viewer.  You can get it from

Bosse Nyström has built the X viewer for OS/2 using XFree86. He writes:

I compiled the unix [3.3.1] sources with the attached diffs and got a working viewer under OS2 with XFree86 (and EMX).

I tested it with servers for OSF and Win32 (rev 16),   some problems with National characters for the win server otherwise it works fine.

-- Bosse

You can get Bosse's version from his FTP server at, or from


We used to have DEC Alpha OSF machines here, but they've all been switched off now, so we're unlikely to distribute any binaries for any more recent versions of VNC. Nirav Merchant has made binaries for OSF 3.3.3 available. He writes:

I have put the OSF binaries, java classes along with the original copyright at:

Should work fine with Digital UNIX 4.0.

Since we will be using OSF, I will make sure that the lastest version of VNC OSF binaries are available at this URL.

Palm devices (PalmPilot, Palm III, etc)

PalmVNC, a viewer for the Palm family of hand-held computers, is now being developed by Harakan Software - the homepage is at

It was originally developed by Vladimir Minenko You can still get his version from

RedHat Linux 6.x

If you have difficulties running vncserver on RH6, check at least the following:

  • Install the 100dpi fonts from the RedHat distribution if not already installed.
  • Check the font path in the vncserver script.
  • Check the permissions on /tmp/.X11-unix as mentioned in the FAQ under 'Why can I only run Xvnc as root?'.

SCO OpenServer

Ben Maizels <> sent the patches he used to compile under SCO OpenServer 5.

You can find his message at .

SGI Irix 6.2 and upwards

See sgi freeware for pre-configured, pre-compiled and inst-packaged VNC server and viewer.

SGI Irix 6.2

Wolfram Gloger <> writes:

The following small patch was all that was necessary for me to successfully compile Xvnc on SGI Irix 6.2 with the N32 binary format. A binary is available at

Wolfram's patch is available at .

SGI Irix 6.4 and 6.5

Charlie Bond told us that Xvnc compiles OK as long as you do:


and Ellis Golub posted some useful notes to the VNC mailing list: IRIX 6.5 Build Notes


James Hall <> writes:

Just thought I would let you know: VNC 3.3.2r2 compiles just fine on Linux/SPARC. I am using it now to run Word and Lotus Notes without
having to go back to my office and use my Windows 95 PC.

To compile, I just ran the 'configure' script, then typed 'make'.  I think I got a few warnings during the compile (mostly unused variables) but VNC runs fine.  This was on Red Hat Linux/SPARC 4.x, so I didn't have glibc. Don't know if that makes a difference.

Shinji Hattori writes:

I could not find a VNC package for Sparc Linux. So I made small patch and compiled on Redhat 5.2 sparc. Xvnc works fine.

You can download his patch here.

SunOS 4.1.3

We've had reports that this buiilds without any problems if you use gcc.

SVGALIB (Linux without an X server) & Single-floppy Linux

One of the very first VNC viewer ports was done by Ganesh Varadarajan and Sitaram Iyer. They built a vncviewer which runs directly from a Linux console using the SVGALIB library.  You will need to install svgalib and configure /etc/vga/libvga.config for your graphics card. This can be a bit fiddly - the vgatest program which comes with the svgalib distribution can sometimes help, and check the setup using another svgalib program such as zgv if you have problems with the viewer.

The viewer doesn't do any scaling or scrolling, so the desktop you connect to must be of a resolution supported by your SVGALIB setup. Try creating servers of different geometries and connecting to them - if your svgalib setup doesn't work for one resolution it may work for another.  Persevere - this has a lot of potential. You can use it to make a very lightweight graphics terminal with reasonable performance on low-end hardware.

The current version will not generally be able to connect to Windows servers, because it requests a palette-based display which the Windows server cannot generate.

The sources for svncviewer are here: svnc-0.1.tgz  Remember that you will need both X and the VNC sources on your machine to build it, though you won't need them to run it!

Single-floppy Linux

Karl Heinz Kremer has created a single-floppy linux distribution which includes svncviewer.  You can now use an old 486 without even a hard disk as an X display. See for details


A new version of the VNC Viewer for OpenVMS VAX and Alpha is now available.

The VNC333R1VMS011 package contains V1.1 of the OpenVMS VNC Viewer, which is based on VNC V3.3.3r1. The port to VMS was performed by Hunter Goatley and David North. It comes as a VMSINSTAL kit, and provides VNCVIEWER and VNCPASSWD images for both VAX and Alpha. (Note that a VNC server for VMS is not included, though we hope to look into the possibility of adding it sometime.)

You can get the VMS VNC Viewer using one of the following URLs:

Windows CE

The Windows CE viewer is now released! See the Download Page and the Documentation. We don't currently have the compiler to build for the ARM platform, so if you have an HP Jornada or similar you may want to get a binary from

Windows NT/Alpha

Tim Senecal has compiled version 3.3.3r1 for Windows NT/Alpha and made it available at:

Previously John Ross Hunt wrote:

Binaries and VC++ project files are now available for Alpha NT WinVNC3.3.2. You can download them from: You will probably have better luck downloading with a standard FTP client instead of using a web browser (it's a firewall issue). We plan to upgrade soon, but until then, the old-fashioned way works best.


For comments, feedback, etc, please see the 'Keeping in touch' page.
Copyright 1999 - AT&T Laboratories Cambridge