blob: 4c0e5fb19736b38913e350c3b105880ff47da54e [file] [log] [blame]
Constantin Kaplinsky47ed8d32004-10-08 09:43:57 +00001
2VNC 4.0 Source Distribution for Unix platforms
3==============================================
4
5Copyright (C) 2002-2004 RealVNC Ltd. All Rights Reserved.
6
7This software is distributed under the GNU General Public Licence as published
8by the Free Software Foundation. See the file LICENCE.TXT for the conditions
9under which this software is made available. VNC also contains code from other
10sources. See the Acknowledgements section below, and the individual files for
11details of the conditions under which they are made available.
12
13
14There are six programs here:
15
16 vncviewer - this is the VNC viewer, or client, program for X.
17
18 Xvnc - this is the X VNC server - it is both a VNC server and an X server
19 with a "virtual" framebuffer. You normally use the vncserver script
20 to start Xvnc.
21
22 vncserver - this is a wrapper script which makes starting an X VNC server
23 (i.e. desktop) more convenient. It is written in Perl, so to use
24 the script you need that.
25
26 vncpasswd - this program allows you to change the password used to access
27 your X VNC desktops. The vncserver script uses this program when
28 you first start a VNC server.
29
30 vncconfig - this program is used to configure and control a running instance
31 of Xvnc.
32
33 x0vncserver - this is an inefficient VNC server which continuously polls any
34 X display, allowing it to be controlled via VNC. It is
35 intended mainly as a demonstration of a simple VNC server.
36
37In addition to these standalone programs, this distribution can also be used to
38turn the native X server for a platform into a VNC server. For XFree86 version
394 servers, this is done using a module loaded at run-time. For other X servers
40it requires replacing the native X server binary.
41
42To build this distribution you need a C++ compiler as well as a C compiler.
43You also need a reasonably recent version of the X window system installed.
44This comes as standard with most unix machines. If you don't have it
45installed, see http://www.xfree86.org or http://www.x.org
46
47To build everything but Xvnc, do:
48
49 % ./configure
50 % make
51
52This should build first some libraries - zlib, rdr, network, Xregion, rfb and
53tx - then vncviewer, vncconfig and vncpasswd. If you already have zlib
54installed on your system you can run "./configure --with-installed-zlib" if you
55prefer (this is strongly advised on FreeBSD, since we've been told there are
56problems otherwise).
57
58Building Xvnc
59=============
60
61Building Xvnc and the VNC support for native X servers is much more complex.
62If you don't need to build it, skip to the section below on installing.
63
64Xvnc differs from the other programs in that it is built inside the X source
65tree. Unlike previous versions of Xvnc, we do not provide an X source tree
66with this distribution. We have designed the distribution to be as independent
67as possible of the X tree used.
68
69We have successfully used XFree86 version 4.3.0, 4.2.0 and 3.3.6 (available
70from http://www.xfree86.org). You could also try the original X.org tree
71available from http://www.x.org but this does not build as easily because of
72lack of support for C++, no support for building server only, and other issues.
73Note 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
80 % tar xzf X420src-1.tgz
81
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
97compiled in. If you are building from an XFree86 version 4 tree on a supported
98platform, 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
122It will also try to install the vnc.so XFree86 version 4 module if appropriate.
123This 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
125section of XF86Config. The parameters listed in the Xvnc manual page can be
126set as options in XF86Config e.g. Option "passwordFile" "/root/.vnc/passwd".
127Note that for some reason options cannot be set in the Module section of
128XF86Config - try the Screen section.
129
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/