在linux中开发自己的函数库
1.首先,我们先编译HelloWorld.c
gcc -c HelloWorld.c -o HelloWorld.o
这样我们得到一个二进制的文件HelloWorld.o
2.接着我们生成静态库。
ar cqs libHelloWorld.a HelloWorld.o
这样我们党额静态链接库就好了。如果有需要可以将其他的二进制文件名加HelloWorld.o的后面将他们连接成一个静态链接库。另外,生成的静态库文件名必须为lib*.a
好了,现在我们来使用我们的库吧。
3.接下来,我们为了能够使用方便,写一个如下头文件。
//HelloWorld.h
void HelloWorld(void);
void HelloWorld(void);
接着我们开始使用我们刚才生成的静态库。写一个main.c的文件。
//main.c
#include "HelloWorld.h"
int main(void)
{
HelloWorld();
return(0);
}
{
HelloWorld();
return(0);
}
4.使用gcc编译
假设我们这里所有的文件都保存在同一个目录下。
gcc -c main.c -o main.o
然后我们连接程序。
gcc main.o -o main -L"./" -lHelloWorld
如果顺利我们会得到一个名为main的可执行文件。
5.说明
在使用gcc进行编译连接时
如需指定头文件目录可用
-I /include-path/
如需指定链接库目录可用
-L /libaray-path/
-lname 表示链接库的名字(链接库可以是动态的 或 静态的,系统默认先
动后
静)