编译C语言库文件

1、首先我们简单的写几个C语言程序

#incldue 
 
/**
* fred
*/
void fred(int arg)
{
    printf("fred: your passwd %d\n", arg);
}
#incldue 
  
/**
* bill
*/
void bill(char *arg)
{
    printf("bill: your passwd %s\n", arg);
}
//分别编译这两个函数
$gcc -c bill.c fred.c
$ls *.o
bill.o fred.o

这通过选项-c 来实 现,-c 的作用是阻止编译器创建一个完整的程序。如果此时试图创建一个完整的程序将不会 成功,因为我们还未定义 main 函数。

//创建头文件
void fred(int arg);
void bill(char *arg);
//编写主函数
 
#include "mylib.h"
 
int main()
{
    bill("hello world!");
    fred(121212);
    return 0;
}
//创建库文件,生成libmy.a文件
$ ar crv libmy.a bill.o fred.o
a - bill.o
a - fred.o
//将我们的库文件添加到调用程序中,生成执行文件program
$ gcc -o program program.c libmy.a
//执行program
./program

2.ls命令的重定向输出

ls -l /usr/lib > aaa

你可能感兴趣的:(编译C语言库文件)