c++ - 安装 Folly(c++ 库)通过 vcpkg 出错

标签 c++ visual-c++ cmake folly vcpkg

我正在尝试构建 folly 库,这是一个 C++ 库,并尝试通过 vcpkg 安装它。

它下载了所有依赖项并安装了依赖的 boost 库。

但它在安装 folly 的最后一步给出了错误。

我使用了以下命令:

.\vcpkg.exe install folly:x64-windows

它给出了以下错误:

CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:56 (message):
Command failed: ninja;-v
Working Directory: D:/C++Examples/Vcpkg/buildtrees/folly/x64-windows-rel/vcpkg-parallel-configure
See logs for more information:
  D:\C++Examples\Vcpkg\buildtrees\folly\config-x64-windows-out.log

Call Stack (most recent call first):
   scripts/cmake/vcpkg_configure_cmake.cmake:237    (vcpkg_execute_required_process)
   ports/folly/portfile.cmake:57 (vcpkg_configure_cmake)
   scripts/ports.cmake:72 (include)


Error: Building package folly:x64-windows failed with: BUILD_FAILED

这是问题的日志文件级详细信息:

CMake Error at CMake/FollyFunctions.cmake:81 (if):
if given arguments:

"D:/C++Examples/Vcpkg/buildtrees/folly/src/8.05.14.00-e96738be27/folly/Benchmark.cpp" "MATCHES" "^D:/C++Examples/Vcpkg/buildtrees/folly/src/8.05.14.00-e96738be27/folly/build/"

Regular expression
"^D:/C++Examples/Vcpkg/buildtrees/folly/src/8.05.14.00-e96738be27/folly/build/"
cannot compile
Call Stack (most recent call first):
CMakeLists.txt:101 (REMOVE_MATCHES_FROM_LISTS)

你知道我该如何处理这个问题吗?

最佳答案

正则表达式

^D:/C++Examples/Vcpkg/buildtrees/folly/src/8.05.14.00-e96738be27/folly/build/

无效,因为“+”字符对正则表达式有特殊意义,“++”组合无意义(不正确)。

看起来项目的 CMakeLists.txt 期望路径不包含特定于正则表达式的字符。

尝试使用其他路径构建项目,其中不包含“+”字符。

关于c++ - 安装 Folly(c++ 库)通过 vcpkg 出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50971904/

相关文章:

c++ - 在 Netbeans 中调试基于 CMake 的应用程序

Android NDK CMake 使用 C++17

c++ - 创建共享 packaged_task 接受带转发的参数

c++ winsock客户端无法使用主机IP的文本框进行连接

c++ - C++ 中的值访问

C++ 从文件中读取

macos - 使用 CMake 自定义 MacOS Bundle 的 Info.plist 文件

c++ - 无法让 ifstream 在 XCode 中工作

c++ - 为什么 C++ 容器不实现接口(interface)

json - 用于 C++ 的简单 JSON 解析器/生成器 (Windows VS 2010)