xref: /openbsd-src/share/man/man3/intro.3 (revision b2ea75c1b17e1a9a339660e7ed45cd24946b230e)
1.\"	$OpenBSD: intro.3,v 1.11 2001/08/03 15:21:16 mpech Exp $
2.\"	$NetBSD: intro.3,v 1.5 1995/05/10 22:46:24 jtc Exp $
3.\"
4.\" Copyright (c) 1980, 1991, 1993
5.\"	The Regents of the University of California.  All rights reserved.
6.\"
7.\" Redistribution and use in source and binary forms, with or without
8.\" modification, are permitted provided that the following conditions
9.\" are met:
10.\" 1. Redistributions of source code must retain the above copyright
11.\"    notice, this list of conditions and the following disclaimer.
12.\" 2. Redistributions in binary form must reproduce the above copyright
13.\"    notice, this list of conditions and the following disclaimer in the
14.\"    documentation and/or other materials provided with the distribution.
15.\" 3. All advertising materials mentioning features or use of this software
16.\"    must display the following acknowledgement:
17.\"	This product includes software developed by the University of
18.\"	California, Berkeley and its contributors.
19.\" 4. Neither the name of the University nor the names of its contributors
20.\"    may be used to endorse or promote products derived from this software
21.\"    without specific prior written permission.
22.\"
23.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33.\" SUCH DAMAGE.
34.\"
35.\"     @(#)intro.3	8.1 (Berkeley) 6/5/93
36.\"
37.Dd June 5, 1993
38.Dt INTRO 3
39.Os
40.Sh NAME
41.Nm intro
42.Nd introduction to the C libraries
43.Sh DESCRIPTION
44This section provides an overview of the C library functions, their error
45returns, and other common definitions and concepts.
46Most of these functions are available from the C library,
47.Em libc .
48Other libraries, such as the math library,
49.Em libm ,
50must be indicated at compile time with the
51.Fl l
52option of the compiler.
53.Pp
54The various libraries (followed by the loader flag):
55.Bl -tag -width Ds
56.It libc Pq Fl l Ns Ar c
57Standard C library functions.
58When using the C compiler
59.Xr cc 1 ,
60it is not necessary to supply the loader flag
61.Fl l Ns Ar c
62for these functions.
63There are several
64.Dq libraries
65or groups of functions included inside of
66.Xr libc : the standard
67.Tn I/O
68routines,
69database routines,
70bit operators,
71string operators,
72character tests and character operators,
73DES encryption routines,
74storage allocation,
75time functions,
76signal handling,
77and more.
78.It libc_r Pq Fl l Ns Ar c_r
79Reentrant C library.
80Contains POSIX 1003.1c
81.Xr pthreads 3
82API and thread scheduler, as well as all of the functions found in
83.Xr libc .
84.It libcurses Pq Fl l Ns Ar curses
85Terminal independent screen management routines for two-dimensional
86non-bitmap display terminals.
87See
88.Xr curses 3 .
89.It libcompat Pq Fl l Ns Ar compat
90Functions which are obsolete but are available for compatibility with
91.Bx 4.3 .
92In particular, a number of system call interfaces provided in previous
93releases of
94.Bx
95have been included for source code compatibility.
96Use of these routines should, for the most part, be avoided.
97The manual page entry for each compatibility routine
98indicates the proper interface to use.
99.It libkvm Pq Fl l Ns Ar kvm
100Kernel virtual interface library.
101See
102.Xr kvm 3 .
103.It libl Pq Fl l Ns Ar l
104The library for
105.Xr lex 1 .
106.It libm Pq Fl l Ns Ar m
107The math library,
108.Em libm .
109See
110.Xr math 3 .
111.It libtermcap Pq Fl l Ns Ar termcap
112The terminal independent operation library package.
113(See
114.Xr termcap 3 . )
115.El
116.Sh FILES
117.Bl -tag -width /usr/lib/libgnumalloc.a -compact
118.It Pa /usr/lib/libacl.a
119.It Pa /usr/lib/libbfd.a
120.It Pa /usr/lib/libc.a
121C library
122.It Pa /usr/lib/libc_r.a
123reentrant C library (see
124.Xr pthreads 3 )
125.It Pa /usr/lib/libcom_err.a
126.It Pa /usr/lib/libcompat.a
1274.3 compatibility library
128.It Pa /usr/lib/libcrypto.a
129.Xr ssl 8
130support library
131.It Pa /usr/lib/libcurses++.a
132C++
133.Xr curses 3
134library
135.It Pa /usr/lib/libcurses.a
136.Xr curses 3
137library
138.It Pa /usr/lib/libdes.a
139.It Pa /usr/lib/libedit.a
140.It Pa /usr/lib/libfl.a
141.It Pa /usr/lib/libform.a
142.It Pa /usr/lib/libg2c.a
143.It Pa /usr/lib/libgmp.a
144.It Pa /usr/lib/libiberty.a
145.It Pa /usr/lib/libkadm.a
146.Xr kerberos 1
147support library
148.It Pa /usr/lib/libkafs.a
149.Xr afsd 8
150support library
151.It Pa /usr/lib/libkdb.a
152.It Pa /usr/lib/libkeycap.a
153.It Pa /usr/lib/libkeynote.a
154.It Pa /usr/lib/libkrb.a
155.It Pa /usr/lib/libkvm.a
156.Xr kvm 3
157kernel virtual memory access library
158.It Pa /usr/lib/libl.a
159.It Pa /usr/lib/libm.a
160.Xr math 3
161library.
162.It Pa /usr/lib/libmenu.a
163.It Pa /usr/lib/libmmalloc.a
164.It Pa /usr/lib/libobjc.a
165.It Pa /usr/lib/libocurses.a
166The
167.Xr ocurses 3
168library is compatible with the
169.Em curses
170library provided in 4.3.
171.It Pa /usr/lib/libopcodes.a
172.It Pa /usr/lib/libossaudio.a
173.It Pa /usr/lib/libotermcap.a
1744.3-compatible termcap library.
175For use with
176.Xo
177.Xr libocurses
178.Pf ( i.e., Fl l Ns Ar ocurses
179.Fl l Ns Ar otermcap )
180.Xc
181.It Pa /usr/lib/libpanel.a
182.Xr panel 3
183library for use with
184.Xo
185.Xr libcurses
186.Pf ( i.e., Fl l Ns Ar panel
187.Fl l Ns Ar curses )
188.Xc
189.It Pa /usr/lib/libpcap.a
190.Xr pcap 3
191library.
192.It Pa /usr/lib/libreadline.a
193.It Pa /usr/lib/libresolv.a
194The
195.Xr resolver 3
196routines are included in
197.Em libc .
198For legacy applications, this library contains only those functions.
199.It Pa /usr/lib/librpcsvc.a
200generated by
201.Xr rpcgen 1 ,
202containing stub functions for many common
203.Xr rpc 3
204protocols
205.It Pa /usr/lib/libskey.a
206support library for the
207.Xr skey 1
208authentication toolkit
209.It Pa /usr/lib/libssl.a
210.Xr ssl 8
211support library
212.It Pa /usr/lib/libstdc++.a
213.It Pa /usr/lib/libtelnet.a
214.It Pa /usr/lib/libtermcap.a
215.It Pa /usr/lib/libtermlib.a
216.It Pa /usr/lib/libutil.a
217.It Pa /usr/lib/libwrap.a
218.It Pa /usr/lib/liby.a
219.It Pa /usr/lib/libz.a
220.Pp
221.It Pa /usr/lib/libm_i387.a
222.It Pa /usr/lib/libi386.a
223.El
224.\" Must talk about shared libraries, _p profiled libraries, and how to tell the
225.\" C compiler to use them, and any other issues.
226.Sh SEE ALSO
227.Xr cc 1 ,
228.Xr ld 1 ,
229.Xr ld.so 1 ,
230.Xr nm 1 ,
231.Xr intro 2 ,
232.Xr math 3 ,
233.Xr pthreads 3 ,
234.Xr stdio 3
235.\" .Sh LIST OF FUNCTIONS
236.\" .Bl -column "strncasecmpxxx" "system"
237.\" .Sy Name	Description
238.\" .El
239.Sh HISTORY
240An
241.Nm
242manual appeared in
243.At v7 .
244