首页 > 解决方案 > 从源代码构建 Doxygen 现在需要 Git?这个可以跳过吗?

问题描述

我正在从 Doxygen 1.8.11 升级到 1.8.16,两者都是从 Linux 上的源代码构建的(在这种情况下是 Ubuntu 18.04,但预计至少可以追溯到 2014 年的各种发行版和版本),我收到了这个错误:

...

-- Performing Test ICONV_ACCEPTS_NONCONST_INPUT
-- Performing Test ICONV_ACCEPTS_NONCONST_INPUT - Success
-- Performing Test ICONV_ACCEPTS_CONST_INPUT
-- Performing Test ICONV_ACCEPTS_CONST_INPUT - Failed
CMake Error at /home/<snip/>/build64/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Git (missing: GIT_EXECUTABLE)
Call Stack (most recent call first):
  /home/<snip/>/build64/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /home/<snip/>/build64/share/cmake-3.4/Modules/FindGit.cmake:77 (find_package_handle_standard_args)
  cmake/git_watcher.cmake:72 (find_package)
  libversion/CMakeLists.txt:11 (include)


-- Configuring incomplete, errors occurred!

似乎从源代码构建 Doxygen 现在需要一个 Git 可执行文件。我想避免在我们的构建说明中添加另一个依赖项。它需要 Git 做什么,我可以绕过它吗?

[编辑:看起来 Doxygen 1.8.15 在没有 Git 的情况下可以正常构建,因此此更改是在 1.8.16(当前最新版本)中引入的。]

标签: gitdoxygen

解决方案


对于 1.8.16 版本,git 是必需的,但在主版本中,此限制已被取消:

该修复包括删除 cmake/git_watcher.cmake 中的“REQUIRED”一词,因此该行:

    find_package(Git QUIET REQUIRED)

将会:

    find_package(Git QUIET)

推荐阅读