我在configure.ac中声明了一个变量:
MY_VERSION="0:0:0"
AC_SUBST(MY_VERSION)
AC_MSG_NOTICE([$MY_VERSION])
在./configure阶段期间正确打印变量的值。
在Makefile.am中有以下行:
libmylib_la_LDFLAGS = -version-info @MY_VERSION@
在链接器命令行中,它在除Solaris之外的所有系统上正确扩展为“-version-info 0:0:0”。在solaris上(SunOS 5.10 Generic_141414-10 sun4u sparc SUNW,Sun-Blade-100)我得到了“-version-info”没有版本号。
知道可能出了什么问题吗?
答案 0 :(得分:1)
(这里有点黑暗,但......)
我的猜测是,无论出于何种原因,我都会在Solaris上定义MY或VERSION。尝试使用
AC_SUBST([MY_VERSION])
相反,这样你就告诉M4明确定义它。
同样如伊戈尔所说,使用$(MY_VERSION)
(虽然它与此无关。)