1.\" $OpenBSD: intro.3,v 1.13 2002/06/30 21:46:23 deraadt 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 44The manual pages in section 3 provide an overview of the C library 45functions, their error returns, 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 libc: the standard 66.Tn I/O 67routines, 68database routines, 69bit operators, 70string operators, 71character tests and character operators, 72DES encryption routines, 73storage allocation, 74time functions, 75signal handling, 76and more. 77.It libc_r Pq Fl l Ns Ar c_r 78Reentrant C library. 79Contains POSIX 1003.1c 80.Xr pthreads 3 81API and thread scheduler, as well as all of the functions found in libc. 82.It libcurses Pq Fl l Ns Ar curses 83Terminal independent screen management routines for two-dimensional 84non-bitmap display terminals. 85See 86.Xr curses 3 . 87.It libcompat Pq Fl l Ns Ar compat 88Functions which are obsolete but are available for compatibility with 89.Bx 4.3 . 90In particular, a number of system call interfaces provided in previous 91releases of 92.Bx 93have been included for source code compatibility. 94Use of these routines should, for the most part, be avoided. 95The manual page entry for each compatibility routine 96indicates the proper interface to use. 97.It libkvm Pq Fl l Ns Ar kvm 98Kernel virtual interface library. 99See 100.Xr kvm 3 . 101.It libl Pq Fl l Ns Ar l 102The library for 103.Xr lex 1 . 104.It libm Pq Fl l Ns Ar m 105The math library, 106.Em libm . 107See 108.Xr math 3 . 109.It libtermcap Pq Fl l Ns Ar termcap 110The terminal independent operation library package. 111(See 112.Xr termcap 3 . ) 113.El 114.Sh FILES 115.Bl -tag -width /usr/lib/libgnumalloc.a -compact 116.It Pa /usr/lib/libacl.a 117.It Pa /usr/lib/libbfd.a 118.It Pa /usr/lib/libc.a 119C library 120.It Pa /usr/lib/libc_r.a 121reentrant C library (see 122.Xr pthreads 3 ) 123.It Pa /usr/lib/libcom_err.a 124.It Pa /usr/lib/libcompat.a 1254.3 compatibility library 126.It Pa /usr/lib/libcrypto.a 127.Xr ssl 8 128support library 129.It Pa /usr/lib/libcurses++.a 130C++ 131.Xr curses 3 132library 133.It Pa /usr/lib/libcurses.a 134.Xr curses 3 135library 136.It Pa /usr/lib/libdes.a 137.It Pa /usr/lib/libedit.a 138.It Pa /usr/lib/libfl.a 139.It Pa /usr/lib/libform.a 140.It Pa /usr/lib/libg2c.a 141.It Pa /usr/lib/libgmp.a 142.It Pa /usr/lib/libiberty.a 143.It Pa /usr/lib/libkadm.a 144.Xr kerberos 1 145support library 146.It Pa /usr/lib/libkafs.a 147.Xr afsd 8 148support library 149.It Pa /usr/lib/libkdb.a 150.It Pa /usr/lib/libkeycap.a 151.It Pa /usr/lib/libkeynote.a 152.It Pa /usr/lib/libkrb.a 153.It Pa /usr/lib/libkvm.a 154.Xr kvm 3 155kernel virtual memory access library 156.It Pa /usr/lib/libl.a 157.It Pa /usr/lib/libm.a 158.Xr math 3 159library. 160.It Pa /usr/lib/libmenu.a 161.It Pa /usr/lib/libmmalloc.a 162.It Pa /usr/lib/libobjc.a 163.It Pa /usr/lib/libocurses.a 164The 165.Xr ocurses 3 166library is compatible with the 167.Em curses 168library provided in 4.3. 169.It Pa /usr/lib/libopcodes.a 170.It Pa /usr/lib/libossaudio.a 171.It Pa /usr/lib/libotermcap.a 1724.3-compatible termcap library. 173For use with 174.Xo 175.Xr ocurses 3 176.Pf ( i.e., Fl l Ns Ar ocurses 177.Fl l Ns Ar otermcap ) 178.Xc 179.It Pa /usr/lib/libpanel.a 180.Xr panel 3 181library for use with 182.Xo 183.Xr curses 3 184.Pf ( i.e., Fl l Ns Ar panel 185.Fl l Ns Ar curses ) 186.Xc 187.It Pa /usr/lib/libpcap.a 188.Xr pcap 3 189library. 190.It Pa /usr/lib/libreadline.a 191.It Pa /usr/lib/libresolv.a 192The 193.Xr resolver 3 194routines are included in 195.Em libc . 196For legacy applications, this library contains only those functions. 197.It Pa /usr/lib/librpcsvc.a 198generated by 199.Xr rpcgen 1 , 200containing stub functions for many common 201.Xr rpc 3 202protocols 203.It Pa /usr/lib/libskey.a 204support library for the 205.Xr skey 1 206authentication toolkit 207.It Pa /usr/lib/libssl.a 208.Xr ssl 8 209support library 210.It Pa /usr/lib/libstdc++.a 211.It Pa /usr/lib/libtelnet.a 212.It Pa /usr/lib/libtermcap.a 213.It Pa /usr/lib/libtermlib.a 214.It Pa /usr/lib/libutil.a 215.It Pa /usr/lib/libwrap.a 216.It Pa /usr/lib/liby.a 217.It Pa /usr/lib/libz.a 218.Pp 219.It Pa /usr/lib/libm_i387.a 220.It Pa /usr/lib/libi386.a 221.El 222.\" Must talk about shared libraries, _p profiled libraries, and how to tell the 223.\" C compiler to use them, and any other issues. 224.Sh SEE ALSO 225.Xr cc 1 , 226.Xr ld 1 , 227.Xr ld.so 1 , 228.Xr nm 1 , 229.Xr intro 2 , 230.Xr math 3 , 231.Xr pthreads 3 , 232.Xr stdio 3 233.\" .Sh LIST OF FUNCTIONS 234.\" .Bl -column "strncasecmpxxx" "system" 235.\" .Sy Name Description 236.\" .El 237.Sh HISTORY 238An 239.Nm 240manual appeared in 241.At v7 . 242