如何链接现有自动生成项目中的静态库

时间:2013-12-05 10:50:48

标签: c linux gcc makefile automake

我有一个静态库(.a文件),我可以使用Linux上的以下命令行与主程序进行良好的链接,方法是将.a放在当前文件夹中,并使用带有“”的include来优先选择当前文件夹图书馆位置。

gcc userfile.c -L. -lnameoflib

但是,我需要将这个预先构建的库集成到自动生成文件项目中。我尝试将userfile.c添加到Makefile.am中的源文件列表中。但是,当运行make时,无法找到从静态库调用的函数的引用,即.a

经过一些调查,似乎是尝试使用name.a创建一个库,其中库已经存在,我只想要脚本使用它。< / p>

make文件项目是一个众所周知的开源项目,具有标准的bootstrap,configure,make和make install步骤。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

如果您不希望现有的makefile构建此.a,只需将LDADD = ./libsomething.a添加到Makefile.am并重新运行automake&amp;&amp;配置。 - 凯尔塔尔