| 1 | \input texinfo |
| 2 | @c $Id$ |
| 3 | @setfilename intro.info |
| 4 | @settitle Introduction |
| 5 | @iftex |
| 6 | @c The include file "texiplus.tex" is in the texinfo/cygnus dir, and |
| 7 | @c implements Cygnus modifications to the texinfo manual style. |
| 8 | @input texiplus |
| 9 | @c The include file "smpklug.texi" is a kluge to deal with local |
| 10 | @c document production issues at Cygnus; it's safe to comment out this |
| 11 | @c line if you don't have (or don't want) the file. |
| 12 | @input smpklug.texi |
| 13 | @smallbook |
| 14 | @cropmarks |
| 15 | @finalout |
| 16 | @end iftex |
| 17 | @titlepage |
| 18 | @title Introduction |
| 19 | @sp 3 |
| 20 | @subtitle Cygnus Support Developer's Kit for Solaris 2.0 |
| 21 | @author Cygnus Support |
| 22 | @page |
| 23 | |
| 24 | @tex |
| 25 | \def\$#1${{#1}} % Kluge: collect RCS revision info without $...$ |
| 26 | \xdef\manvers{\$Revision$} % for use in headers, footers |
| 27 | {\parskip=0pt \hfill Cygnus Support\par \hfill {\it Introduction (Solaris-2)}, \manvers\par \hfill |
| 28 | \TeX{}info \texinfoversion\par } |
| 29 | @end tex |
| 30 | |
| 31 | @vskip 0pt plus 1filll |
| 32 | Copyright @copyright{} 1991, 1992 Cygnus Support |
| 33 | |
| 34 | Permission is granted to make and distribute verbatim copies of |
| 35 | this manual provided the copyright notice and this permission notice |
| 36 | are preserved on all copies. |
| 37 | |
| 38 | Permission is granted to copy and distribute modified versions of this |
| 39 | manual under the conditions for verbatim copying, provided also that |
| 40 | the entire resulting derived work is distributed under the terms of a |
| 41 | permission notice identical to this one. |
| 42 | |
| 43 | Permission is granted to copy and distribute translations of this manual |
| 44 | into another language, under the above conditions for modified versions. |
| 45 | |
| 46 | @end titlepage |
| 47 | |
| 48 | @node Top |
| 49 | @unnumbered Introduction |
| 50 | |
| 51 | This Developer's Kit puts at your disposal, in a single coordinated |
| 52 | and tested release, some of the best software development tools |
| 53 | available: |
| 54 | |
| 55 | @table @t |
| 56 | @item gcc |
| 57 | C compiler (and its supporting programs and libraries) |
| 58 | |
| 59 | @item gdb |
| 60 | Debugger |
| 61 | |
| 62 | @item gprof |
| 63 | Performance analyzer |
| 64 | |
| 65 | @item byacc |
| 66 | Parser generator |
| 67 | |
| 68 | @item flex |
| 69 | Fast lexical analyzer generator |
| 70 | |
| 71 | @item send_pr |
| 72 | Cygnus problem-reporting utillity |
| 73 | |
| 74 | @item patch |
| 75 | Source-code update utility |
| 76 | |
| 77 | @item info |
| 78 | @itemx makeinfo |
| 79 | Online documentation tools |
| 80 | |
| 81 | @item texinfo.tex |
| 82 | @itemx texindex |
| 83 | Documentation printing tools |
| 84 | @end table |
| 85 | |
| 86 | These tools are free software; many of them are from the Free Software |
| 87 | Foundation (FSF) GNU project (in speech, the `G' in GNU is sounded). |
| 88 | Others were developed by the University of California, Berkeley and its |
| 89 | contributors. |
| 90 | |
| 91 | Cygnus Support collaborates with the FSF in developing these tools. In |
| 92 | this product, we've ported recent forms of the development tools to |
| 93 | Solaris 2, tested them, made sure they work well together, and made them |
| 94 | easy to install---the installation package comes with binaries already |
| 95 | compiled for your system. |
| 96 | |
| 97 | Cygnus Support exists to help our clients exploit their freedom in |
| 98 | using, adapting, or enhancing this software. @xref{Cygnus,,About Cygnus |
| 99 | Support}, for more information. |
| 100 | |
| 101 | @menu |
| 102 | * Copying:: Free Software |
| 103 | * Manuals:: Printed and Online Manuals |
| 104 | * Info:: Using Online Documentation |
| 105 | * Bugs:: Reporting Trouble |
| 106 | * Cygnus:: About Cygnus Support |
| 107 | @end menu |
| 108 | |
| 109 | @page |
| 110 | @node Copying |
| 111 | @section Free Software |
| 112 | If you find our Developer's Kit useful, please feel free to give or sell |
| 113 | copies of the software and documentation to anyone you like. |
| 114 | |
| 115 | Cygnus products are @dfn{free software}, protected by the @sc{gnu} General |
| 116 | Public License (GPL). The GPL gives you the freedom to copy or adapt any |
| 117 | program it licenses---but every person getting a copy also gets with it the |
| 118 | freedom to modify that copy (which means that they must get access to |
| 119 | the source code), and the freedom to distribute further copies. Typical |
| 120 | software companies use copyrights to limit your freedoms; the GPL is |
| 121 | designed to preserve your freedoms. |
| 122 | |
| 123 | Fundamentally, the General Public License is a license which grants you |
| 124 | these freedoms, and only imposes restrictions to ensure that no one can |
| 125 | take these freedoms away from anyone else. |
| 126 | |
| 127 | For full details, see the @strong{LICENSE} section in this manual |
| 128 | set. |
| 129 | |
| 130 | @page |
| 131 | @node Manuals |
| 132 | @section Manuals |
| 133 | @noindent |
| 134 | These printed manuals are included in your Cygnus Progressive Release: |
| 135 | @display |
| 136 | |
| 137 | @cite{Using the @sc{gnu} C Compiler} |
| 138 | |
| 139 | @cite{The C Preprocessor} |
| 140 | |
| 141 | @cite{GDB: The @sc{gnu} Source-Level Debugger} |
| 142 | |
| 143 | @end display |
| 144 | |
| 145 | The manuals are also designed for easy online browsing (@pxref{Info,,Online |
| 146 | Documentation}). For online use, the accompanying software distribution |
| 147 | includes all the printed manuals, and also the following documents: |
| 148 | |
| 149 | @table @emph |
| 150 | @item FLEX: A Fast Lexical Analyzer Generator |
| 151 | Generates lexical analyzers suitable for GCC and other compilers. |
| 152 | |
| 153 | @item Info: Documentation Browsing System |
| 154 | Full details on the @code{info} browser. |
| 155 | |
| 156 | @item Texinfo: The @sc{gnu} Documentation Format |
| 157 | How you can use @TeX{} to print these manuals, and how to write your own |
| 158 | manuals in this style. |
| 159 | |
| 160 | @item Using and Porting @sc{gnu cc} |
| 161 | Detailed information about what's needed to put @sc{gnu cc} on different |
| 162 | platforms, or to modify @sc{gnu cc}. Also includes all the |
| 163 | information in the printed manual @cite{Using the @sc{gnu} C Compiler}. |
| 164 | @end table |
| 165 | |
| 166 | @noindent |
| 167 | Finally, @code{man} pages are included for all the programs in the release. |
| 168 | |
| 169 | You have the freedom to copy the manuals, like the software they cover; |
| 170 | each manual's copyright statement includes the necessary permissions. |
| 171 | The manuals themselves are also free software, and the source for them |
| 172 | is also available in the installation package. |
| 173 | |
| 174 | @node Info |
| 175 | @section Using Online Documentation |
| 176 | |
| 177 | You can browse through the online documentation using either @sc{gnu} Emacs, |
| 178 | or the (included) program @code{info}. |
| 179 | Online, the manuals are organized into @dfn{nodes}, which correspond to |
| 180 | the chapters and sections of a printed book. You can follow them in |
| 181 | sequence, if you wish, just like in the printed book---but there are |
| 182 | also other choices. The documents have menus that let you go quickly to |
| 183 | the node that has the information you need. @code{info} has ``hot'' |
| 184 | references; if one section refers to another, you can tell @code{info} |
| 185 | to take you immediately to that other section---and you can get back |
| 186 | again easily to take up your reading where you left off. Naturally, you |
| 187 | can also search for particular words or phrases. |
| 188 | |
| 189 | The best way to get started with the online documentation system is to |
| 190 | run the browser @code{info}. After the Progressive Release is installed on |
| 191 | your system, you can get into @code{info} by just typing its name---no |
| 192 | options or arguments are necessary---at your shell's prompt (shown as |
| 193 | @samp{eg%} here): |
| 194 | @example |
| 195 | eg% info |
| 196 | @end example |
| 197 | |
| 198 | @noindent |
| 199 | @code{info} will display its first screen, a menu of the documentation |
| 200 | available, and will await your input. Typing the single letter |
| 201 | @example |
| 202 | h |
| 203 | @end example |
| 204 | @noindent |
| 205 | requests a tutorial, designed to teach you how to use @code{info}. |
| 206 | |
| 207 | If you already use Emacs, you may want to get into the documentation |
| 208 | browsing mode, instead, by typing @kbd{C-h i} inside Emacs. |
| 209 | |
| 210 | You can get out of @code{info} at any time by typing the single letter |
| 211 | @kbd{q}. |
| 212 | |
| 213 | @page |
| 214 | Here is a summary of all the @code{info} commands; @code{info} itself |
| 215 | can display a summary like this at any time, when you type the single |
| 216 | character @kbd{?}. |
| 217 | |
| 218 | @smallexample |
| 219 | @cartouche |
| 220 | h @r{Invoke the Info tutorial.} |
| 221 | q @r{Quit Info} |
| 222 | |
| 223 | @i{Selecting other nodes:} |
| 224 | n @r{Move to the ``next'' node of this node.} |
| 225 | p @r{Move to the ``previous'' node of this node.} |
| 226 | u @r{Move ``up'' from this node.} |
| 227 | m @r{Pick menu item specified by name (or abbreviation).} |
| 228 | @r{Picking a menu item moves to the corresponding node.} |
| 229 | f @r{Follow a cross reference. Reads name of reference.} |
| 230 | l @r{Move to the last node you were looking at.} |
| 231 | |
| 232 | @i{Moving within a node:} |
| 233 | Space @r{scroll forward a page.} |
| 234 | DEL @r{scroll backward a page.} |
| 235 | b @r{Go to beginning of this node.} |
| 236 | |
| 237 | @i{Advanced commands:} |
| 238 | 1 @r{Pick first item in node's menu.} |
| 239 | 2 - 5 @r{Pick second ... fifth item in node's menu.} |
| 240 | g @r{Move to node specified by name.} |
| 241 | @r{You may include a filename as well, as @code{(@var{FILENAME})@var{NODENAME}}.} |
| 242 | s @r{Search through this Info file for a specified string,} |
| 243 | @r{and select the node in which the next occurrence is found.} |
| 244 | Ctl-p @r{Print the contents of this node using @samp{lpr}.} |
| 245 | @end cartouche |
| 246 | @end smallexample |
| 247 | |
| 248 | @page |
| 249 | @node Bugs |
| 250 | @section Reporting Trouble |
| 251 | We've tried to make the programs in your Progressive Release as |
| 252 | trouble-free as possible. If you do encounter trouble, however, we'd |
| 253 | like to be able to diagnose and fix the problem as quickly as possible. |
| 254 | You can help us do that by using the script @code{send_pr} to send us your |
| 255 | problem reports. |
| 256 | |
| 257 | @code{send_pr} invokes an editor on a problem report form (after |
| 258 | trying to fill in some fields with reasonable default values). After |
| 259 | you exit the editor, @code{send_pr} sends the filled out form to the |
| 260 | problem report management system (PRMS) at Cygnus Support. You can |
| 261 | use the environment variable @code{EDITOR} to specify what editor to |
| 262 | use (the default is @code{vi}). |
| 263 | |
| 264 | @code{send_pr} attempts to send your problem report to Cygnus via |
| 265 | electronic mail. If your site cannot support this, you can still use |
| 266 | the problem report form: use @samp{send_pr -p} to capture a copy of the |
| 267 | blank problem-report form and fill it in. (You can also photocopy the |
| 268 | blank form at the end of this section to fill in.) In either case you |
| 269 | can FAX the problem report to Cygnus at @w{+1 415 322 3270}. |
| 270 | |
| 271 | At Cygnus Support, the problem report is assigned a unique number and is |
| 272 | stored in the PRMS database according to its category and your |
| 273 | customer ID. PRMS automatically replies with an acknowledgement, citing |
| 274 | the category and the PR number. As the next step, Cygnus staff inspects |
| 275 | the bug report (if you've marked your report as high priority, we respond |
| 276 | with an analysis of the problem in less than five business days). We'll |
| 277 | offer a solution as soon as possible, and await your feedback. As a |
| 278 | matter of policy, we do not consider your problem report closed until |
| 279 | you've agreed with a solution we offer. |
| 280 | |
| 281 | To ensure that a problem report is handled promptly, it must contain |
| 282 | your (unique) customer ID and one of the available categories, shown as |
| 283 | comments in the problem report form, to identify the problem area. As a |
| 284 | Cygnus Support customer, you can obtain your customer ID by invoking |
| 285 | @code{send_pr} with the @samp{-request-id} option. |
| 286 | |
| 287 | @page |
| 288 | @subsection Filling out a problem report |
| 289 | Problem reports are structured so that a program can manage them. When |
| 290 | filling out the form, please remember the following guidelines: |
| 291 | |
| 292 | @itemize @bullet |
| 293 | @item |
| 294 | Each PR needs a valid customer ID and category. |
| 295 | |
| 296 | @item |
| 297 | Describe only one problem with one PR. |
| 298 | |
| 299 | @item |
| 300 | For follow-up mail, use the same subject line as the one in the |
| 301 | automatic acknowledgent. It shows the category, the PR number and the |
| 302 | original synopsis line. This allows Cygnus Support to make sure mail on |
| 303 | the same problem report stays together. |
| 304 | |
| 305 | @item |
| 306 | Please try to make the subject or synopsis line as informative |
| 307 | as possible. For misbehaving software, you might use a sentence of |
| 308 | the form ``with input foo, component xyz produces bar''. |
| 309 | |
| 310 | @item |
| 311 | You don't need to delete the comment lines while editing the PR form; |
| 312 | this is done by @code{send_pr}. Put your information before or |
| 313 | after the comment. |
| 314 | @end itemize |
| 315 | |
| 316 | @page |
| 317 | For full details on @code{send_pr} and the supporting form, see the man |
| 318 | page @code{send_pr}(1). Here is a sample blank problem-report form; if |
| 319 | electronic mail from your site cannot reach Cygnus, you can send us |
| 320 | problem reports by photocopying this sample, filling it out, and sending |
| 321 | it by FAX to @w{+1 415 322 3270}. |
| 322 | |
| 323 | @iftex |
| 324 | @widen{28pt} |
| 325 | @end iftex |
| 326 | |
| 327 | @smallexample |
| 328 | SEND_PR: Choose from the following categories: |
| 329 | SEND_PR: |
| 330 | SEND_PR: bfd binutils bison clib config cvs |
| 331 | SEND_PR: diff doc emacs g++ gas gcc |
| 332 | SEND_PR: gdb grep ispell ld libg++ libiberty |
| 333 | SEND_PR: libiberty make rcs readline send_pr texinfo |
| 334 | SEND_PR: other |
| 335 | SEND_PR: |
| 336 | |
| 337 | To: cygnus-bugs@@cygnus.com |
| 338 | |
| 339 | Subject: |
| 340 | |
| 341 | From: |
| 342 | |
| 343 | Reply-To: |
| 344 | |
| 345 | X-send-pr-version: send_pr: 1.15 |
| 346 | |
| 347 | |
| 348 | >Customer-Id: |
| 349 | |
| 350 | >Originator: <name of the PR author (one line)> |
| 351 | |
| 352 | >Organization: <organization of PR author (multiple lines)> |
| 353 | |
| 354 | |
| 355 | |
| 356 | >Confidential: <[ yes | no ] (one line)> |
| 357 | |
| 358 | >Synopsis: <synopsis of the problem (one line)> |
| 359 | |
| 360 | >Severity: <[ non-critical | serious | critical ] (one line)> |
| 361 | |
| 362 | >Priority: <[ low | medium | high ] (one line)> |
| 363 | |
| 364 | >Category: <name of the product (one line)> |
| 365 | |
| 366 | >Class: <[ sw-bug | doc-bug | change-request | support ] (one line)> |
| 367 | |
| 368 | >Release: <release number or tag (one line)> |
| 369 | |
| 370 | >Environment: |
| 371 | <machine, os, target, libraries (multiple lines)> |
| 372 | |
| 373 | |
| 374 | |
| 375 | >Description: |
| 376 | <precise description of the problem (multiple lines)> |
| 377 | |
| 378 | |
| 379 | |
| 380 | |
| 381 | |
| 382 | |
| 383 | >How-To-Repeat: |
| 384 | <code/input/activities to reproduce the problem (multiple lines)> |
| 385 | @end smallexample |
| 386 | |
| 387 | @iftex |
| 388 | @widen{-28pt} |
| 389 | @end iftex |
| 390 | |
| 391 | @page |
| 392 | @node Cygnus |
| 393 | @section About Cygnus Support |
| 394 | Cygnus Support was founded in 1989 to provide commercial support for |
| 395 | free software. Cygnus supplies products and services that benefit |
| 396 | advanced development groups by allowing them to use state-of-the-art |
| 397 | tools without having to maintain them. With Cygnus Support, sites that |
| 398 | once were forced to do their own tool support can recover that valuable |
| 399 | staff time. Former users of proprietary software now may choose |
| 400 | supported free software, combining the advantages of both worlds. |
| 401 | |
| 402 | Free software is faster, more powerful, and more portable than its |
| 403 | proprietary counterparts. It evolves faster because users who want to |
| 404 | make improvements are free to do so. Cygnus tracks these |
| 405 | improvements and integrates them into tested, stable versions ready |
| 406 | for commercial use, then backs this software with comprehensive |
| 407 | support. |
| 408 | |
| 409 | With Cygnus Support as your partner, you will have the software and |
| 410 | the support you need to meet your business objectives. Cygnus |
| 411 | is intimately familiar with this software from extensive experience |
| 412 | using, debugging, and implementing it. You get direct access to the |
| 413 | most qualified support people: the authors of that software. |
| 414 | |
| 415 | We provide up-to-the minute ``progressive'' releases, for those who need |
| 416 | the very latest version---or ``vintage'' releases: stable versions which |
| 417 | have been through extensive use and testing. |
| 418 | |
| 419 | Because all our improvements are also free software, you can |
| 420 | distribute them widely within your organization, or to your customers, |
| 421 | without extra cost. |
| 422 | |
| 423 | @sp 4 |
| 424 | |
| 425 | @display |
| 426 | Cygnus Support |
| 427 | 814 University Avenue |
| 428 | Palo Alto, CA 94301, USA |
| 429 | |
| 430 | +1 415 322 3811 |
| 431 | |
| 432 | email: @code{info@@cygnus.com} |
| 433 | fax: +1 415 322 3270 |
| 434 | @end display |
| 435 | |
| 436 | @bye |