当前位置: 技术问答>linux和unix
如何编译和使用库文件?
来源: 互联网 发布时间:2015-07-02
本文导语: 因刚学unix下c/c++编程,有好些疑惑,请各路大侠指点:如果某个应用程序由程序群组成,主程序C,需要调用A程序中的一些接口函数,其中A有自己的说明文件.h,和实现文件.c,一般你通常是怎么在C中使用A的?把A编译...
因刚学unix下c/c++编程,有好些疑惑,请各路大侠指点:如果某个应用程序由程序群组成,主程序C,需要调用A程序中的一些接口函数,其中A有自己的说明文件.h,和实现文件.c,一般你通常是怎么在C中使用A的?把A编译成库文件,还是有其他的方法?如果编译成库文件,要怎么编译呢(编译器为CC或gcc)?可以给出具体做法吗?引用时,是否就像标准库函数一样,只要include该.h文件后即可使用了呢?谢谢了!
|
算了!给你个网址吧http://www-106.ibm.com/developerworks/linux/library/l-shobj/
|
要看这个A是不是在其他项目也使用。
如果是公共的东西的话,最好编译成库,这样#include了.h,编译时加上-l参数就可以用了。
如果不是公共的,那就简单一些,C加上#include,然后编译时把C和A都放在gcc里就好了。
比如:gcc -o tt A.c C.c
如果是公共的东西的话,最好编译成库,这样#include了.h,编译时加上-l参数就可以用了。
如果不是公共的,那就简单一些,C加上#include,然后编译时把C和A都放在gcc里就好了。
比如:gcc -o tt A.c C.c
|
-ldirname:将dirname加入到头文件的目录列表中,该参数选项在预编译时用.
-Ldirname:将dirname加入到库文件的目录列表中,该参数选项在编译时用.
-lname:使用"libname.a"的库中的函数.如-lm表示连接libm.a库.
-Ldirname:将dirname加入到库文件的目录列表中,该参数选项在编译时用.
-lname:使用"libname.a"的库中的函数.如-lm表示连接libm.a库.
|
up