当前位置: 技术问答>linux和unix
unix下用户自己的.a文件如何生成?
来源: 互联网 发布时间:2015-12-07
本文导语: 如题,我有一个自己项目的公共函数库.c,就是说没有main函数,只是供其它主程序调用,所以只需要生成.o就可以了,但是这个.c里面要用带其他的.o,我就不知道怎么写makefile了。所以想是不是应该打个包,生成自己...
如题,我有一个自己项目的公共函数库.c,就是说没有main函数,只是供其它主程序调用,所以只需要生成.o就可以了,但是这个.c里面要用带其他的.o,我就不知道怎么写makefile了。所以想是不是应该打个包,生成自己的.a文件。
|
gcc -c (公共函数库).c
ar crv (公共函数库).a (公共函数库).o
ar crv (公共函数库).a (公共函数库).o
|
-c 如果存档文件不存在,则创建,并不显示ar发出的警告。
-r 向存档文件中插入.o文件,替换已有的任何同名文件,新成员添加到文档末尾。
-s 创建或升级从符号到.a文件之间的交叉索引映射表,并加入到.a文件中。
等价与ranlib [*.a]。执行该命令后,可用nm –s来查看生成的索引。
-r 向存档文件中插入.o文件,替换已有的任何同名文件,新成员添加到文档末尾。
-s 创建或升级从符号到.a文件之间的交叉索引映射表,并加入到.a文件中。
等价与ranlib [*.a]。执行该命令后,可用nm –s来查看生成的索引。
|
你看一下ar命令
|
创建静态库
ar rc libmyutil.a object1.o object2.o object3.o
ar rc libmyutil.a object1.o object2.o object3.o
|
ar -rc libmystatic.a *.o
|
ranlib 并不是必须的 但对于源于Berkley Unix的系统这一步必须做