重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
下面说一下建立静态链接库的方法
成都创新互联从2013年创立,先为西盟等服务建站,西盟等地企业,进行企业商务咨询服务。为西盟企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。各个C语言编程软件都有它的方法,比如建立一个工程来共享文件,这就比较容易和简单了,现在我们选择使用难一点的linux系统,探究在linux系统下的建立静态链接库的方法。
首先,在linux系统我们在一个文件夹目录里面来建立一个 .h 头文件和一个 .c 文件,(比如我建立tiaoshen.c 和 mmc.h)然后打开它们。
在 .c 头文件里面我们写上自己创作的函数,比如下面我的例子:
int add(int a,int b)
{
return a+b;
}
int sub(int a,int b)
{
return a-b;
}
int mut(int a,int b)
{
return a*b;
}
int div(int a,int b)
{
return a/b;
}
之后我们在头文件中声明这些函数
int add(int a,int b);
int sub(int a,int b);
int mut(int a,int b);
int div(int a,int b);
然后我们开始编译,为了方便,建立一个makefile管理文档,在里面写入:
all:
gcc tiaoshen.c -o tiaoshen.o -c
ar -rc libtiaoshen.a tiaoshen.o
(注意makefile使用的基本规则和使用方法,这里不赘述)
解释一下这两句话: -o后面表示生成的文件的名字, -c表示只编译,不链接,这样你的主函数写完引用它的时候才把它链接到你的程序中。
ar是打包工具,一个程序。 -rc libtiaoshen.a tiaoshen.o表示用tiaoshen.o创建libtiaoshen.a这个打包文件。
然后开始正式使用。
在某处创建一个.c文件,比如 xu.c 然后打开,写入程序,引用你编写的函数,比如:
#include
int main(void)
{
int a ,b ;
a=4;
b=7;
printf("4 * 7 = %d\n",mut(a,b));
}
然后保存,编译。
你可以先在存链接库文件的目录下使用 nm libtiaoshen.a 来查看里面的函数。
编译方法:-lxxx -L链接库目录
gcc xu.c -o shen -ltiaoshen -L.
-ltiaoshen表示引用了tiaoshen库,最后面的-L.表示在当前目录下。
运行,成功!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。