pkg_config_modules 依赖失败,因为 "Uncontrolled" 中的版本

pkg_config_modules dependency fails because version in "Uncontrolled"

问题

我有一个包含以下内容的 CMakeLists.txt 文件:

pkg_check_modules(FOO REQUIRED foo>=0.1.0.1)

当我 运行 Cmake v3.17.2 with cmake3 -G Ninja . 在那个目录中时:

Checking for module 'foo>=0.1.0.1'
  Requested 'foo >= 0.1.0.1' but version of foo is Uncontrolled

详情

问题

我如何告诉 CMake 我的 foo 库是什么版本,以便它不是“不受控制的”?

在 foo 项目的输出中,在生成的 lib64 目录中,有一个 pkgconfig 目录,其中包含 foo.pc.

在该文件中,版本信息如下:

Version: HEAD

将此更改为预期版本。在我的例子中,这是由 foo 的构建过程自动完成的,所以需要的是为当前版本添加一个 git 标签并重建。