如何链接到C中的静态库?

时间:2009-11-10 06:18:25

标签: c build compilation static-libraries

我使用code :: blocks来编译我的静态库。输出结果是libstatic.a文件。 现在,如何链接到我的库以使用已编译的函数?

(我尝试使用#include“libstatic.a”,但我的项目没有编译)

5 个答案:

答案 0 :(得分:45)

cc -o yourprog yourprog.c -lstatic

cc -o yourprog yourprog.c libstatic.a

答案 1 :(得分:6)

您应该#include "libstatic.h",即在代码中使用相应的头文件(代码无法编译的原因),并在libstatic.a中包含gcc -I. -o jvct jvct.c libjvc.a 的路径链接器选项作为您的输入库之一。

这个webpage有一些关于链接到静态库的例子,例如

{{1}}

答案 2 :(得分:2)

我必须在makefile中设置库路径。对于这种情况,您可以使用:

gcc -o myapp main.c -L. -lstatic

答案 3 :(得分:2)

gcc -I. -o jvct jvct.c libjvc.a

答案 4 :(得分:0)

要纯粹静态链接,请使用-static

cc -static yourprogram.c libstatic.a