X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=hs-boehmgc.git;a=blobdiff_plain;f=gc-7.2%2FREADME.QUICK;fp=gc-7.2%2FREADME.QUICK;h=26204cee6ef1084ad8a14c0ff494c65533fa0e44;hp=0000000000000000000000000000000000000000;hb=324587ba93dc77f37406d41fd2a20d0e0d94fb1d;hpb=2a4ea609491b225a1ceb06da70396e93916f137a diff --git a/gc-7.2/README.QUICK b/gc-7.2/README.QUICK new file mode 100644 index 0000000..26204ce --- /dev/null +++ b/gc-7.2/README.QUICK @@ -0,0 +1,88 @@ +Copyright 1988, 1989 Hans-J. Boehm, Alan J. Demers +Copyright (c) 1991-1995 by Xerox Corporation. All rights reserved. +Copyright (c) 1996-1999 by Silicon Graphics. All rights reserved. +Copyright (c) 1999-2001 by Hewlett-Packard. All rights reserved. + +THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED +OR IMPLIED. ANY USE IS AT YOUR OWN RISK. + +Permission is hereby granted to use or copy this program +for any purpose, provided the above notices are retained on all copies. +Permission to modify the code and to distribute modified code is granted, +provided the above notices are retained, and a notice that the code was +modified is included with the above copyright notice. + +A few files have other copyright holders. A few of the files needed +to use the GNU-style build procedure come with a modified GPL license +that appears not to significantly restrict use of the collector, though +use of those files for a purpose other than building the collector may +require the resulting code to be covered by the GPL. + +For more details and the names of other contributors, see the +doc/README* files and include/gc.h. This file describes typical use of +the collector on a machine that is already supported. + +For the version number, see doc/README or version.h. + +INSTALLATION: +Under UN*X, Linux: +Alternative 1 (the old way): type "make test" in this directory. + Link against gc.a. With the most recent GC distributions + you may have to type "make -f Makefile.direct test" or + copy Makefile.direct to Makefile first. + +Alternative 2 (the new way): type + "./configure --prefix=; make; make check; make install". + Link against /lib/libgc.a or /lib/libgc.so. + See README.autoconf for details + +Under Windows 95, 98, Me, NT, or 2000: +copy the appropriate makefile to MAKEFILE, read it, and type "nmake test". +(Under Windows, this assumes you have Microsoft command-line tools +installed, and suitably configured.) +Read the machine specific README in the doc directory if one exists. + +If you need thread support, you will need to follow the special +platform-dependent instructions (win32), or define GC_THREADS +as described in doc/README.macros, or possibly use +--enable-threads=posix when running the configure script. + +If you wish to use the cord (structured string) library with the stand-alone +Makefile.direct, type "make cords", after copying to "Makefile". +(This requires an ANSI C compiler. You may +need to redefine CC in the Makefile. The CORD_printf implementation in +cordprnt.c is known to be less than perfectly portable. The rest of the +package should still work.) + +If you wish to use the collector from C++, type "make c++", or use +--enable-cplusplus with the configure script. With Makefile.direct, +these ones add further files to gc.a and to the include subdirectory. +With the alternate build process,this generates libgccpp. +See cord/cord.h and include/gc_cpp.h. + +TYPICAL USE: +Include "gc.h" from the include subdirectory. Link against the +appropriate library ("gc.a" under UN*X). Replace calls to malloc +by calls to GC_MALLOC, and calls to realloc by calls to GC_REALLOC. +If the object is known to never contain pointers, use GC_MALLOC_ATOMIC +instead of GC_MALLOC. + +Define GC_DEBUG before including gc.h for additional checking. + +More documentation on the collector interface can be found at +http://www.hpl.hp.com/personal/Hans_Boehm/gc/gcinterface.html, +in doc/README and other files in the doc directory, and in include/gc.h . + +WARNINGS: + +Do not store the only pointer to an object in memory allocated +with system malloc, since the collector usually does not scan +memory allocated in this way. + +Use with threads may be supported on your system, but requires the +collector to be built with thread support. See Makefile. The collector +does not guarantee to scan thread-local storage (e.g. of the kind +accessed with pthread_getspecific()). The collector does scan +thread stacks though, so generally the best solution is to ensure that +any pointers stored in thread-local storage are also stored on the +thread's stack for the duration of their lifetime.