如何诊断或解决"rule "尝试使用 Visual Studio 2017 构建 Boost 库 1.69.0 时" unknown" package.path 的错误?



当尝试使用 Visual Studio 2017 在 Windows 10 上从全新、干净的结帐构建 Boost 1.69.0 时,我遇到了以下令人困惑的错误消息:

**********************************************************************
** Visual Studio 2017 Developer Command Prompt v15.0
** Copyright (c) 2017 Microsoft Corporation
**********************************************************************
[vcvarsall.bat] Environment initialized for: 'x64'
C:/90cf73ea/tools/boost_install/.boost-install-dirs.jam:15: in boost-install-dirs.includedir
ERROR: rule "package.paths" unknown in module "boost-install-dirs".
C:/90cf73ea/libs/headers/build/../../../tools/boost_installboost-install.jam:721: in boost-install.install-cmake-config
libsheadersbuildJamfile:87: in modules.load
C:/90cf73ea/tools/build/src/buildproject.jam:375: in load-jamfile
C:/90cf73ea/tools/build/src/buildproject.jam:64: in load
C:/90cf73ea/tools/build/src/buildproject.jam:89: in load-used-projects
C:/90cf73ea/tools/build/src/buildproject.jam:75: in load
C:/90cf73ea/tools/build/src/buildproject.jam:145: in project.find
C:/90cf73ea/tools/build/srcbuild-system.jam:618: in load
C:90cf73eatoolsbuildsrc/kernelmodules.jam:295: in import
C:90cf73eatoolsbuildsrc/kernel/bootstrap.jam:139: in boost-build
C:90cf73eaboost-build.jam:17: in module scope

我正在从VS2017命令提示符执行构建命令。我能够毫无问题地执行"引导.bat"。运行"b2.exe toolset=msvc-14.1"(无论是否有任何其他参数)会导致上述错误消息。如何诊断和/或解决此错误?

供参考,就我而言,我已经克隆了 Boost 存储库(目前为 1.70.0)。尝试构建并收到此错误。然后我做了一个"git status",发现了一堆未被跟踪的库(大概来自 1.70.0 分支)。删除所有未跟踪的目录允许我构建。

希望对某人有所帮助!

我不明白为什么会这样,但我通过将 git 从版本 2.18.0 更新到版本 2.20.1 来解决此问题。

我在提升构建邮件列表中得到了这个建议:

此错误表示生成子模块不是最新的。 - 史蒂文·渡边

我推测 git 版本 2.18.0 中的某些内容在 boost 构建子模块中遇到了困难。这个故事的寓意似乎是,检查你的 git 版本是否需要更新。

最新更新