有没有办法在 Automake 中引用库?

Posted

技术标签:

【中文标题】有没有办法在 Automake 中引用库?【英文标题】:Is there a way to reference a library in Automake? 【发布时间】:2015-09-20 22:55:06 【问题描述】:

我正在尝试使用 LDADD 来引用预构建的库,而 Automake 坚持必须构建该库。 Automake 手册说:

"如果你需要链接configure找不到的库,你可以使用LDADD来做。这个变量用来指定额外的对象或库来链接;它不适合指定特定的链接器标志,你为此应使用 AM_LDFLAGS。”

在我的代码中我同时使用了这两个

LDADD = ../lib/library.a

prog_LDADD = ../lib/librarya.

在这两种情况下都输出

*** No rule to make target 'library.a', needed by 'SlipTest.exe'. Stop.

这让我很难过。 艺术

【问题讨论】:

【参考方案1】:

检查文件../lib/library.a是否真的存在。

使用automake 构建库时,您应该使用libtool,而libtool-libraries 使用(独立于平台的).la 扩展:

prog_LDADD = ../lib/library.la

【讨论】:

以上是关于有没有办法在 Automake 中引用库?的主要内容,如果未能解决你的问题,请参考以下文章

使用本地头文件时未定义的引用

Automake:使用 make dist 删除配置脚本检查

automake aclocal等报错Can't locate Automake/Config.pm in @INC

Automake:如何在不安装的情况下构建共享库

用于创建库和使用它的程序的 automake

如何使用 Automake 链接到共享库