具体来说,我想按照以下方式做一些事情。对于定义应如何构建库文件的 Makefile.am 脚本,我希望能够始终访问公共(public)库名称。例如,假设我希望库的名称被称为“name”,我可以从以下变量开始:

LIBNAME = name

那么我可能会有这样的事情:
lib_LTLIBRARIES = lib$(LIBNAME).la

但是当我想做以下事情时,automake 开始提示:
lib$(LIBNAME)_la_SOURCES = file1.cpp file2.cpp
lib$(LIBNAME)_la_LIBADD = ...

是否可以使用其他一些语法进行类似的操作,这样我就不必多次重复库的名称?

干杯,

本。

最佳答案

如果您在 configure 时间而不是在 Makefile 本身中定义变量,则可以执行此操作。

例如,在 configure.ac 中:

LIBNAME=name
AC_SUBST(LIBNAME)

然后你可以像这样在 Makefile.am 中访问它:
lib_LTLIBRARIES = lib@[email protected]

关于gnu-make - 如何访问在 Makefile.am 文件顶部定义的用户定义变量?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14526535/

10-11 23:01