Libraries

The shell has no real concept of libraries in the way that Perl and C use libraries. In C, you can bring in the Math library by including its header file and linking against the library (simply called “m,” hence -lm in the following gcc call). Additional functions, including cos(), sin(), and tan(), are then available to the program.

$ cat math.c #include <stdio.h> #include <math.h> int main(int argc, char *argv[]) { int arg=atoi(argv[1]); printf("cos(%d)=%0.8f\n", arg, cos(arg)); printf("sin(%d)=%0.8f\n", arg, sin(arg)); printf("tan(%d)=%0.8f\n", arg, tan(arg)); return 0; } $ gcc -lm -o math math.c $ ./math 30 cos(30)=0.15425145 sin(30)=-0.98803162 tan(30)=-6.40533120 $ ./math 60 cos(60)=-0.95241298 sin(60)=-0.30481062 tan(60)=0.32004039 $ ./math 90 cos(90)=-0.44807362 sin(90)=0.89399666 tan(90)=-1.99520041 $

math.c

This sample C code does no sanity tests on its input and is only here to show how linking to a library works in the C language. Also, if its results look wrong, that is because it is working in radians and not degrees.

The shell has a few ways of defining standard settings — aliases, variables, and functions, which create an environment almost indistinguishable from a set of libraries. When your shell is invoked interactively, it reads ~/.profile ...

Start Free Trial

No credit card required