\input texinfo @c $Id$ @setfilename intro.info @settitle Introduction @iftex @c The include file "texiplus.tex" is in the texinfo/cygnus dir, and @c implements Cygnus modifications to the texinfo manual style. @input texiplus @c The include file "smpklug.texi" is a kluge to deal with local @c document production issues at Cygnus; it's safe to comment out this @c line if you don't have (or don't want) the file. @input smpklug.texi @smallbook @cropmarks @finalout @end iftex @titlepage @title Introduction @sp 3 @subtitle Cygnus Support Developer's Kit for Solaris 2.0 @author Cygnus Support @page @tex \def\$#1${{#1}} % Kluge: collect RCS revision info without $...$ \xdef\manvers{\$Revision$} % for use in headers, footers {\parskip=0pt \hfill Cygnus Support\par \hfill {\it Introduction (Solaris-2)}, \manvers\par \hfill \TeX{}info \texinfoversion\par } @end tex @vskip 0pt plus 1filll Copyright @copyright{} 1991, 1992 Cygnus Support Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions. @end titlepage @node Top @unnumbered Introduction This Developer's Kit puts at your disposal, in a single coordinated and tested release, some of the best software development tools available: @table @t @item gcc C compiler (and its supporting programs and libraries) @item gdb Debugger @item gprof Performance analyzer @item byacc Parser generator @item flex Fast lexical analyzer generator @item send_pr Cygnus problem-reporting utillity @item patch Source-code update utility @item info @itemx makeinfo Online documentation tools @item texinfo.tex @itemx texindex Documentation printing tools @end table These tools are free software; many of them are from the Free Software Foundation (FSF) GNU project (in speech, the `G' in GNU is sounded). Others were developed by the University of California, Berkeley and its contributors. Cygnus Support collaborates with the FSF in developing these tools. In this product, we've ported recent forms of the development tools to Solaris 2, tested them, made sure they work well together, and made them easy to install---the installation package comes with binaries already compiled for your system. Cygnus Support exists to help our clients exploit their freedom in using, adapting, or enhancing this software. @xref{Cygnus,,About Cygnus Support}, for more information. @menu * Copying:: Free Software * Manuals:: Printed and Online Manuals * Info:: Using Online Documentation * Bugs:: Reporting Trouble * Cygnus:: About Cygnus Support @end menu @page @node Copying @section Free Software If you find our Developer's Kit useful, please feel free to give or sell copies of the software and documentation to anyone you like. Cygnus products are @dfn{free software}, protected by the @sc{gnu} General Public License (GPL). The GPL gives you the freedom to copy or adapt any program it licenses---but every person getting a copy also gets with it the freedom to modify that copy (which means that they must get access to the source code), and the freedom to distribute further copies. Typical software companies use copyrights to limit your freedoms; the GPL is designed to preserve your freedoms. Fundamentally, the General Public License is a license which grants you these freedoms, and only imposes restrictions to ensure that no one can take these freedoms away from anyone else. For full details, see the @strong{LICENSE} section in this manual set. @page @node Manuals @section Manuals @noindent These printed manuals are included in your Cygnus Progressive Release: @display @cite{Using the @sc{gnu} C Compiler} @cite{The C Preprocessor} @cite{GDB: The @sc{gnu} Source-Level Debugger} @end display The manuals are also designed for easy online browsing (@pxref{Info,,Online Documentation}). For online use, the accompanying software distribution includes all the printed manuals, and also the following documents: @table @emph @item FLEX: A Fast Lexical Analyzer Generator Generates lexical analyzers suitable for GCC and other compilers. @item Info: Documentation Browsing System Full details on the @code{info} browser. @item Texinfo: The @sc{gnu} Documentation Format How you can use @TeX{} to print these manuals, and how to write your own manuals in this style. @item Using and Porting @sc{gnu cc} Detailed information about what's needed to put @sc{gnu cc} on different platforms, or to modify @sc{gnu cc}. Also includes all the information in the printed manual @cite{Using the @sc{gnu} C Compiler}. @end table @noindent Finally, @code{man} pages are included for all the programs in the release. You have the freedom to copy the manuals, like the software they cover; each manual's copyright statement includes the necessary permissions. The manuals themselves are also free software, and the source for them is also available in the installation package. @node Info @section Using Online Documentation You can browse through the online documentation using either @sc{gnu} Emacs, or the (included) program @code{info}. Online, the manuals are organized into @dfn{nodes}, which correspond to the chapters and sections of a printed book. You can follow them in sequence, if you wish, just like in the printed book---but there are also other choices. The documents have menus that let you go quickly to the node that has the information you need. @code{info} has ``hot'' references; if one section refers to another, you can tell @code{info} to take you immediately to that other section---and you can get back again easily to take up your reading where you left off. Naturally, you can also search for particular words or phrases. The best way to get started with the online documentation system is to run the browser @code{info}. After the Progressive Release is installed on your system, you can get into @code{info} by just typing its name---no options or arguments are necessary---at your shell's prompt (shown as @samp{eg%} here): @example eg% info @end example @noindent @code{info} will display its first screen, a menu of the documentation available, and will await your input. Typing the single letter @example h @end example @noindent requests a tutorial, designed to teach you how to use @code{info}. If you already use Emacs, you may want to get into the documentation browsing mode, instead, by typing @kbd{C-h i} inside Emacs. You can get out of @code{info} at any time by typing the single letter @kbd{q}. @page Here is a summary of all the @code{info} commands; @code{info} itself can display a summary like this at any time, when you type the single character @kbd{?}. @smallexample @cartouche h @r{Invoke the Info tutorial.} q @r{Quit Info} @i{Selecting other nodes:} n @r{Move to the ``next'' node of this node.} p @r{Move to the ``previous'' node of this node.} u @r{Move ``up'' from this node.} m @r{Pick menu item specified by name (or abbreviation).} @r{Picking a menu item moves to the corresponding node.} f @r{Follow a cross reference. Reads name of reference.} l @r{Move to the last node you were looking at.} @i{Moving within a node:} Space @r{scroll forward a page.} DEL @r{scroll backward a page.} b @r{Go to beginning of this node.} @i{Advanced commands:} 1 @r{Pick first item in node's menu.} 2 - 5 @r{Pick second ... fifth item in node's menu.} g @r{Move to node specified by name.} @r{You may include a filename as well, as @code{(@var{FILENAME})@var{NODENAME}}.} s @r{Search through this Info file for a specified string,} @r{and select the node in which the next occurrence is found.} Ctl-p @r{Print the contents of this node using @samp{lpr}.} @end cartouche @end smallexample @page @node Bugs @section Reporting Trouble We've tried to make the programs in your Progressive Release as trouble-free as possible. If you do encounter trouble, however, we'd like to be able to diagnose and fix the problem as quickly as possible. You can help us do that by using the script @code{send_pr} to send us your problem reports. @code{send_pr} invokes an editor on a problem report form (after trying to fill in some fields with reasonable default values). After you exit the editor, @code{send_pr} sends the filled out form to the problem report management system (PRMS) at Cygnus Support. You can use the environment variable @code{EDITOR} to specify what editor to use (the default is @code{vi}). @code{send_pr} attempts to send your problem report to Cygnus via electronic mail. If your site cannot support this, you can still use the problem report form: use @samp{send_pr -p} to capture a copy of the blank problem-report form and fill it in. (You can also photocopy the blank form at the end of this section to fill in.) In either case you can FAX the problem report to Cygnus at @w{+1 415 322 3270}. At Cygnus Support, the problem report is assigned a unique number and is stored in the PRMS database according to its category and your customer ID. PRMS automatically replies with an acknowledgement, citing the category and the PR number. As the next step, Cygnus staff inspects the bug report (if you've marked your report as high priority, we respond with an analysis of the problem in less than five business days). We'll offer a solution as soon as possible, and await your feedback. As a matter of policy, we do not consider your problem report closed until you've agreed with a solution we offer. To ensure that a problem report is handled promptly, it must contain your (unique) customer ID and one of the available categories, shown as comments in the problem report form, to identify the problem area. As a Cygnus Support customer, you can obtain your customer ID by invoking @code{send_pr} with the @samp{-request-id} option. @page @subsection Filling out a problem report Problem reports are structured so that a program can manage them. When filling out the form, please remember the following guidelines: @itemize @bullet @item Each PR needs a valid customer ID and category. @item Describe only one problem with one PR. @item For follow-up mail, use the same subject line as the one in the automatic acknowledgent. It shows the category, the PR number and the original synopsis line. This allows Cygnus Support to make sure mail on the same problem report stays together. @item Please try to make the subject or synopsis line as informative as possible. For misbehaving software, you might use a sentence of the form ``with input foo, component xyz produces bar''. @item You don't need to delete the comment lines while editing the PR form; this is done by @code{send_pr}. Put your information before or after the comment. @end itemize @page For full details on @code{send_pr} and the supporting form, see the man page @code{send_pr}(1). Here is a sample blank problem-report form; if electronic mail from your site cannot reach Cygnus, you can send us problem reports by photocopying this sample, filling it out, and sending it by FAX to @w{+1 415 322 3270}. @iftex @widen{28pt} @end iftex @smallexample SEND_PR: Choose from the following categories: SEND_PR: SEND_PR: bfd binutils bison clib config cvs SEND_PR: diff doc emacs g++ gas gcc SEND_PR: gdb grep ispell ld libg++ libiberty SEND_PR: libiberty make rcs readline send_pr texinfo SEND_PR: other SEND_PR: To: cygnus-bugs@@cygnus.com Subject: From: Reply-To: X-send-pr-version: send_pr: 1.15 >Customer-Id: >Originator: <name of the PR author (one line)> >Organization: <organization of PR author (multiple lines)> >Confidential: <[ yes | no ] (one line)> >Synopsis: <synopsis of the problem (one line)> >Severity: <[ non-critical | serious | critical ] (one line)> >Priority: <[ low | medium | high ] (one line)> >Category: <name of the product (one line)> >Class: <[ sw-bug | doc-bug | change-request | support ] (one line)> >Release: <release number or tag (one line)> >Environment: <machine, os, target, libraries (multiple lines)> >Description: <precise description of the problem (multiple lines)> >How-To-Repeat: <code/input/activities to reproduce the problem (multiple lines)> @end smallexample @iftex @widen{-28pt} @end iftex @page @node Cygnus @section About Cygnus Support Cygnus Support was founded in 1989 to provide commercial support for free software. Cygnus supplies products and services that benefit advanced development groups by allowing them to use state-of-the-art tools without having to maintain them. With Cygnus Support, sites that once were forced to do their own tool support can recover that valuable staff time. Former users of proprietary software now may choose supported free software, combining the advantages of both worlds. Free software is faster, more powerful, and more portable than its proprietary counterparts. It evolves faster because users who want to make improvements are free to do so. Cygnus tracks these improvements and integrates them into tested, stable versions ready for commercial use, then backs this software with comprehensive support. With Cygnus Support as your partner, you will have the software and the support you need to meet your business objectives. Cygnus is intimately familiar with this software from extensive experience using, debugging, and implementing it. You get direct access to the most qualified support people: the authors of that software. We provide up-to-the minute ``progressive'' releases, for those who need the very latest version---or ``vintage'' releases: stable versions which have been through extensive use and testing. Because all our improvements are also free software, you can distribute them widely within your organization, or to your customers, without extra cost. @sp 4 @display Cygnus Support 814 University Avenue Palo Alto, CA 94301, USA +1 415 322 3811 email: @code{info@@cygnus.com} fax: +1 415 322 3270 @end display @bye