Skip to main content
 首页 » 编程设计

c之如何链接现有自动制作项目中的静态库

2023年11月22日22dflying

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

gcc userfile.c -L. -lnameoflib 

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

根据一些调查,它似乎是试图创建一个名称为.a 的库,因为该库已经存在,我只是想让脚本使用它

make 文件项目是一个现有的知名开源项目,具有标准的引导、配置、制作和安装步骤。

非常感谢任何帮助。

请您参考如下方法:

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