blob: 77871721dfd4e31de3f3425e3a7c9c4434321459 [file] [log] [blame]
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +00001
Peter Åstrand9fb4e0e2004-12-30 10:03:00 +00002TightVNC Source Distribution for Unix platforms
3===============================================
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +00004
Constantin Kaplinskyd6ac3722006-04-17 10:06:52 +00005Copyright (C) 2002-2005 RealVNC Ltd. All Rights Reserved.
Peter Åstrand9fb4e0e2004-12-30 10:03:00 +00006Copyright (C) 2000-2004 Constantin Kaplinsky.
Peter Åstrande2ab84e2005-02-05 16:33:44 +00007Copyright (C) 2004-2005 Peter Astrand, Cendio AB
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +00008
Peter Åstrand9fb4e0e2004-12-30 10:03:00 +00009This software is distributed under the GNU General Public Licence as
10published by the Free Software Foundation. See the file LICENCE.TXT
11for the conditions under which this software is made available.
12TightVNC also contains code from other sources. See the
13Acknowledgements section below, and the individual files for details
14of the conditions under which they are made available.
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +000015
16
17There are six programs here:
18
19 vncviewer - this is the VNC viewer, or client, program for X.
20
21 Xvnc - this is the X VNC server - it is both a VNC server and an X server
22 with a "virtual" framebuffer. You normally use the vncserver script
23 to start Xvnc.
24
25 vncserver - this is a wrapper script which makes starting an X VNC server
26 (i.e. desktop) more convenient. It is written in Perl, so to use
27 the script you need that.
28
29 vncpasswd - this program allows you to change the password used to access
30 your X VNC desktops. The vncserver script uses this program when
31 you first start a VNC server.
32
33 vncconfig - this program is used to configure and control a running instance
34 of Xvnc.
35
36 x0vncserver - this is an inefficient VNC server which continuously polls any
37 X display, allowing it to be controlled via VNC. It is
38 intended mainly as a demonstration of a simple VNC server.
39
Peter Åstrandc003b4f2005-02-11 13:12:46 +000040In addition to these standalone programs, this distribution can also
41be used to turn the native X server for a platform into a VNC server.
42For X.Org servers, this is done using a module loaded at run-time.
43For other X servers it requires replacing the native X server binary.
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +000044
45To build this distribution you need a C++ compiler as well as a C compiler.
46You also need a reasonably recent version of the X window system installed.
47This comes as standard with most unix machines. If you don't have it
Peter Åstrandc003b4f2005-02-11 13:12:46 +000048installed, see http://www.x.org.
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +000049
50To build everything but Xvnc, do:
51
52 % ./configure
53 % make
54
55This should build first some libraries - zlib, rdr, network, Xregion, rfb and
56tx - then vncviewer, vncconfig and vncpasswd. If you already have zlib
57installed on your system you can run "./configure --with-installed-zlib" if you
58prefer (this is strongly advised on FreeBSD, since we've been told there are
59problems otherwise).
60
61Building Xvnc
62=============
63
64Building Xvnc and the VNC support for native X servers is much more complex.
65If you don't need to build it, skip to the section below on installing.
66
67Xvnc differs from the other programs in that it is built inside the X source
68tree. Unlike previous versions of Xvnc, we do not provide an X source tree
69with this distribution. We have designed the distribution to be as independent
70as possible of the X tree used.
71
Peter Åstrandc003b4f2005-02-11 13:12:46 +000072We have successfully used X.Org 6.8.2 (available from http://www.x.org/).
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +000073Note that the X tree is enormous and notoriously difficult to deal with -
74building it is not for the faint-hearted!
75
76Once you have a copy of the X source tree, make sure it is unpacked at the top
77level of this distribution, so that the xc directory of the X source tree
78matches the xc of this distribution, for example:
79
Peter Åstrandc003b4f2005-02-11 13:12:46 +000080 % tar xzf X11R6.8.2-src.tar.bz2
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +000081
82Then you must apply a patch to some files in the X source tree:
83
84 % patch -Np0 <xc.patch
85
86If this works, you should be able to build the entire X tree, including Xvnc:
87
88 % cd xc
89 % make World
90
91This will take a long time, and will quite probably fail for one reason or
92another! If you are having trouble, we suggest you try to build the X tree in
93isolation first before attempting it with the VNC additions.
94
95If successful, in the xc/programs/Xserver directory you should find an Xvnc
96binary, plus the native X server binary(ies) for your platform with VNC support
Peter Åstrandc003b4f2005-02-11 13:12:46 +000097compiled in. If you are building from an X.Org tree on a supported
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +000098platform, you should also find a vnc.so module in
99xc/programs/Xserver/vnc/modules.
100
101Exactly which X extensions and features are built into Xvnc and the native X
102server binary is determined by the settings in xc/config/cf. The file vnc.def
103contains the settings we use to build our binary distributions. You may need
104to edit this and the other files as appropriate.
105
106Installing
107==========
108
109Different unix platforms have different conventions for where software should
110be installed. To copy the programs to some directory which is in your PATH
111environment variable, such as /usr/local/bin, there is a script called
112vncinstall which you can use:
113
114 % cd ..
115 % ./vncinstall /usr/local/bin
116
117This will also attempt to install the manual pages in an appropriate directory.
118You can specify an alternative directory as a second argument to vncinstall:
119
120 % ./vncinstall /usr/local/bin /usr/local/man
121
Peter Åstrandc003b4f2005-02-11 13:12:46 +0000122It will also try to install the vnc.so X.Org module if appropriate.
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +0000123This will be copied to the /usr/X11R6/lib/modules/extensions directory and can
124be enabled like any other module by adding a Load "vnc" line to the Module
Peter Åstrandc003b4f2005-02-11 13:12:46 +0000125section of xorg.conf. The parameters listed in the Xvnc manual page can be
126set as options in xorg.conf e.g. Option "passwordFile" "/root/.vnc/passwd".
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +0000127Note that for some reason options cannot be set in the Module section of
Peter Åstrandc003b4f2005-02-11 13:12:46 +0000128xorg.conf - try the Screen section.
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +0000129
130If you want to use the Java VNC viewer, you should copy the files from
131the java directory to some suitable installation directory such as
132/usr/local/vnc/classes:
133
134 % mkdir -p /usr/local/vnc/classes
135 % cp java/* /usr/local/vnc/classes
136
137We recommend that you use the vncserver script to run Xvnc for you. You can
138edit the script as appropriate for your site. Things you may need to change
139include:
140
141 * The location of Perl - if Perl is not installed in /usr/bin you'll need
142 to edit the "#!/usr/bin/perl" first line of vncserver.
143
144 * Xvnc's font path and color database. If you have an installation of
145 X which is not in the standard place you may need to add arguments to the
146 Xvnc command line to set these. These should be appended to the $cmd
147 variable at the comment "# Add font path and color database...".
148
149 * $vncJavaFiles - this specifies the location of the files for
150 the VNC viewer Java applet. The default is /usr/local/vnc/classes.
151
152
153ACKNOWLEDGEMENTS
154================
155
156This distribution contains public domain DES software by Richard Outerbridge.
157This is:
158
159 Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge.
160 (GEnie : OUTER; CIS : [71755,204]) Graven Imagery, 1992.
161
162
163This distribution contains software from the X Window System. This is:
164
165 Copyright 1987, 1988, 1998 The Open Group
166
167 Permission to use, copy, modify, distribute, and sell this software and its
168 documentation for any purpose is hereby granted without fee, provided that
169 the above copyright notice appear in all copies and that both that
170 copyright notice and this permission notice appear in supporting
171 documentation.
172
173 The above copyright notice and this permission notice shall be included in
174 all copies or substantial portions of the Software.
175
176 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
177 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
178 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
179 OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
180 AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
181 CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
182
183 Except as contained in this notice, the name of The Open Group shall not be
184 used in advertising or otherwise to promote the sale, use or other dealings
185 in this Software without prior written authorization from The Open Group.
186
187
188 Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
189
190 All Rights Reserved
191
192 Permission to use, copy, modify, and distribute this software and its
193 documentation for any purpose and without fee is hereby granted,
194 provided that the above copyright notice appear in all copies and that
195 both that copyright notice and this permission notice appear in
196 supporting documentation, and that the name of Digital not be
197 used in advertising or publicity pertaining to distribution of the
198 software without specific, written prior permission.
199
200 DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
201 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
202 DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
203 ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
204 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
205 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
206 SOFTWARE.
207
208
209This distribution contains zlib compression software. This is:
210
211 Copyright (C) 1995-2002 Jean-loup Gailly and Mark Adler
212
213 This software is provided 'as-is', without any express or implied
214 warranty. In no event will the authors be held liable for any damages
215 arising from the use of this software.
216
217 Permission is granted to anyone to use this software for any purpose,
218 including commercial applications, and to alter it and redistribute it
219 freely, subject to the following restrictions:
220
221 1. The origin of this software must not be misrepresented; you must not
222 claim that you wrote the original software. If you use this software
223 in a product, an acknowledgment in the product documentation would be
224 appreciated but is not required.
225 2. Altered source versions must be plainly marked as such, and must not be
226 misrepresented as being the original software.
227 3. This notice may not be removed or altered from any source distribution.
228
229 Jean-loup Gailly Mark Adler
230 jloup@gzip.org madler@alumni.caltech.edu
231
232
233This distribution contains Java DES software by Dave Zimmerman
234<dzimm@widget.com> and Jef Poskanzer <jef@acme.com>. This is:
235
236 Copyright (c) 1996 Widget Workshop, Inc. All Rights Reserved.
237
238 Permission to use, copy, modify, and distribute this software and its
239 documentation for NON-COMMERCIAL or COMMERCIAL purposes and without fee
240 is hereby granted, provided that this copyright notice is kept intact.
241
242 WIDGET WORKSHOP MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE
243 SUITABILITY OF THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT
244 NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
245 PARTICULAR PURPOSE, OR NON-INFRINGEMENT. WIDGET WORKSHOP SHALL NOT BE
246 LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING,
247 MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
248
249 THIS SOFTWARE IS NOT DESIGNED OR INTENDED FOR USE OR RESALE AS ON-LINE
250 CONTROL EQUIPMENT IN HAZARDOUS ENVIRONMENTS REQUIRING FAIL-SAFE
251 PERFORMANCE, SUCH AS IN THE OPERATION OF NUCLEAR FACILITIES, AIRCRAFT
252 NAVIGATION OR COMMUNICATION SYSTEMS, AIR TRAFFIC CONTROL, DIRECT LIFE
253 SUPPORT MACHINES, OR WEAPONS SYSTEMS, IN WHICH THE FAILURE OF THE
254 SOFTWARE COULD LEAD DIRECTLY TO DEATH, PERSONAL INJURY, OR SEVERE
255 PHYSICAL OR ENVIRONMENTAL DAMAGE ("HIGH RISK ACTIVITIES"). WIDGET
256 WORKSHOP SPECIFICALLY DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY OF
257 FITNESS FOR HIGH RISK ACTIVITIES.
258
259 Copyright (C) 1996 by Jef Poskanzer <jef@acme.com>. All rights
260 reserved.
261
262 Redistribution and use in source and binary forms, with or without
263 modification, are permitted provided that the following conditions
264 are met:
265 1. Redistributions of source code must retain the above copyright
266 notice, this list of conditions and the following disclaimer.
267 2. Redistributions in binary form must reproduce the above copyright
268 notice, this list of conditions and the following disclaimer in the
269 documentation and/or other materials provided with the distribution.
270
271 THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
272 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
273 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
274 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS
275 BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
276 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
277 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
278 BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
279 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
280 OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
281 ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
282
283 Visit the ACME Labs Java page for up-to-date versions of this and other
284 fine Java utilities: http://www.acme.com/java/