c-检索使用autotool生成的lib版本



我正试图找到一种方法来获得用libtool编译的c库的版本。

我在makefile.am中将-version-info 1:1:1添加到LD_FLAGS,输出正常:lib.so.0.1.1

我需要的是在运行时检索该库的版本,并将其显示在信息面板上。

我正在考虑两种不同的方法:

  1. 使用一个外部文件(例如header),我可以在其中定义版本,并使makefile.am能够从中读取版本值。通过这种方式,我也可以从代码中访问它
  2. 一种不同于在FS上解析库文件名的方法,用于检索-version-info选项设置的版本

其中一个想法适用吗?

定义LIB_VERSION = 0:1:1

如果您想从代码-DVERSION=$(LIB_VERSION) 中使用它,请使用它:-version-info $(LIB_VERSION)并将其附加到cflags中

最新更新