问题标签 [vcpkg]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
519 浏览

visual-c++ - 如何使用 VcPkg 动态链接 cpprestsdk 并静态提升?

我将 VC2015 与带有 MSBuild 集成的 vcpkg 一起使用。我已经做好了:

现在我的项目正在使用 cpprestsdk 的 dll 及其依赖项。是否可以使用 cpprestsdk dll 并链接到其依赖项的静态库?

0 投票
1 回答
2834 浏览

c++ - 在 Windows 10 中使用 vcpkg 安装 Tesseract

我的设置:目前我正在 Windows 10 上的 Visual Studio 2017 中使用 c++。

目标:开始在我的基本 C++ 应用程序中使用 tesseract ocr。首先,为了确保我能够#include tesseract 库并编译和执行一个非常简单的程序,我正在尝试运行下面的简单测试程序,该程序在官方tesseract 项目的“APIExample”页面上提供。

到目前为止我所做的:按照这个堆栈溢出答案的建议,我vcpkg install tesseract:x64-windows在命令提示符下运行了命令以及命令.\vcpkg integrate install。当我运行命令时,vcpkg list我看到了我安装的所有包(如下面的屏幕截图所示),但是尽管 Visual Studio 中的这种智能感知给了我错误,说它找不到运行上述测试项目的包含,其代码我已经贴在下面。是什么赋予了?我在下面提供了我的 Visual Studio 设置的屏幕截图,其中包含生成的错误和错误代码以供参考。

在此处输入图像描述

在此处输入图像描述

0 投票
1 回答
706 浏览

c++ - 安装 Folly (c++ library) 通过 vcpkg 给出错误

我正在尝试构建folly 一个 c++ 库,并尝试通过vcpkg.

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

但是它在安装愚蠢的最后一步中给出了错误。

我使用了以下命令:

.\vcpkg.exe 安装愚蠢:x64-windows

它给出了以下错误:

以下是该问题的日志文件级别详细信息:

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

0 投票
1 回答
2017 浏览

c++ - 将 boost 与 Visual Studio 和 vcpkg 链接时出错

我正在尝试完成一项简单的任务,以检查在 Windows 中开发“Linux 应用程序”有多容易。

我正在使用Microsoft 的vcpkg来设置 headers 和 libs 和crow,这是一个使用 boost 作为驱动程序项目的 c++ http 服务器

来源很简单

我已经通过 vcpkg 下载了 boost 并使用 Visual Studio 对项目进行了编码

制作:

CMakeSettings.json

链接给出错误:

它会给任何人敲响警钟吗?我为此苦苦挣扎了好几个小时。

0 投票
1 回答
6013 浏览

c++ - vcpkg + cmake + Visual Studio 不工作

我有一个使用 boost 和 zmq 库的基于 cmake 的 C++ 项目。

我正在尝试使用 Visual Studio Community 2017 和 vcpkg 在 Windows 上构建它。

我按照项目页面上的说明安装了 vcpkg。

现在我可以看到安装了所需的软件包:

我还跑来.\vcpkg integrate install启用集成:

接下来,Visual Studio 能够立即打开 CMake 项目。我唯一需要添加的显然是工具链文件。所以我转到CMakeLists.txt->“更改 CMake 设置”,并"cmakeCommandArgs": "-DCMAKE_TOOLCHAIN_FILE=C:/Users/me/source/repos/vcpkg/scripts/buildsystems/vcpkg.cmake"为每个目标设置(有 4 个目标,调试/发布 x x86/x64)。

但是,正如我在 Visual Studio 的“输出”窗格中看到的那样,重新启动 CMake 后,它仍然找不到依赖项:

特别是命令行:

命令行:C:\PROGRAM FILES (X86)\MICROSOFT VISUAL STUDIO\2017\COMMUNITY\COMMON7\IDE\COMMONEXTENSIONS\MICROSOFT\CMAKE\CMake\bin\cmake.exe -G "Ninja" -DCMAKE_INSTALL_PREFIX:PATH="C: \Users\me\CMakeBuilds\55e700de-d370-f634-bc40-455cedaf329e\install\x86-Debug" -DCMAKE_CXX_COMPILER="C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/ 14.14.26428/bin/HostX86/x86/cl.exe" -DCMAKE_C_COMPILER="C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.14.26428/bin/HostX86/x86 /cl.exe" -DCMAKE_TOOLCHAIN_FILE=C:/Users/me/source/repos/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_BUILD_TYPE="Debug" -DCMAKE_MAKE_PROGRAM="C:\PROGRAM FILES (X86)\MICROSOFT VISUAL STUDIO \2017\COMMUNITY\COMMON7\IDE\COMMONEXTENSIONS\MICROSOFT\CMAKE\Ninja\ninja.exe" "C:\Users\me\Source\Repos\bluezero"

确实包含-DCMAKE_TOOLCHAIN_FILE=C:/Users/me/source/repos/vcpkg/scripts/buildsystems/vcpkg.cmake应有的内容,但显然这还不够。

CMakeLists.txt文件中有关查找依赖项的相关部分是:

我犯了一些明显的错误吗?

0 投票
0 回答
1118 浏览

vcpkg - 错误:构建包 bzip2:x86-windows 失败:BUILD_FAILED

我是 vcpkg 的新手,我正在尝试安装 gdal,但在尝试安装 bzip2 时似乎失败了

当我跑步时

我收到以下错误消息

将构建和安装以下包: bzip2[core]:x86-windows 启动包 1/1:bzip2:x86-windows 构建包 bzip2[core]:x86-windows... -- 下载http://www. bzip.org/1.0.6/bzip2-1.0.6.tar.gz ... -- 下载http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz ... 失败. 状态:56;“从对等方接收数据时失败”脚本/cmake/vcpkg_download_distfile.cmake 处的 CMake 错误:151(消息):

调用堆栈(最近的调用优先):ports/bzip2/portfile.cmake:4 (vcpkg_download_distfile) scripts/ports.cmake:71 (include)

错误:构建包 bzip2:x86-windows 失败:BUILD_FAILED 请确保您使用的是最新的端口文件,然后在https://github.com/Microsoft/vcpkg/issues.\vcpkg update提交问题,包括:包:bzip2:x86- windows Vcpkg 版本:0.0.113-nohash

此外,附上上述日志文件中的任何相关部分

我没有使用代理,所以我不确定为什么会失败

0 投票
0 回答
70 浏览

vcpkg - 在“顶级”级别列出包?

如果标题具有误导性,我深表歉意。我的意思是,如果我安装了 boost(所有的 boost):

以及其他“较小”的软件包,例如 openssl:

现在,当我列出已安装的软件包时,有没有办法只列出“boost”和“openssl”?目前它显示了 boost 中的所有包,而我只想看到这两个包。

谢谢。

0 投票
1 回答
2924 浏览

cmake - VSCode 不使用 Vcpkg 获取的库

出于某种原因,VSCode 无法看到 Vcpkg 安装的库目录中的标头。我在 Ubuntu 17.04 上使用 CMake 构建系统。我收到如下错误:

我的 CMakeLists.txt 看起来像这样:

RubeusCore/CMakeLists.txt 是这样的:

.vscode/c_cpp_properties.json:

另外,我已经在 CMake 中指定了一次 Vcpkg 工具链文件。

0 投票
0 回答
865 浏览

c++ - 在 vcpkg 安装 SDL2 后查询目标名称中的 CMake 双冒号

在 Windows 上使用 vcpkg 安装 SDL2 最后建议find_package在“配置”模式下使用 CMake;并显示使用and的示例target_link_libraries调用。我不熟悉“配置”模式,也不熟悉这些双冒号名称。我通常在寻找and 。所以我的第一个问题是,假设双冒号名称以某种方式提供库路径,我如何向编译器提供包含路径?SDL2::SDL2SDL2::SDL2mainPACKAGE_INCLUDE_DIRSPACKAGE_LIBRARIEStarget_link_libraries

其次,在 Ubuntu 上,CMake 警告未设置策略 CMP0028;这与双冒号名称有关。然后使用 Make 会产生两个错误 - 它无法找到-lSDL2::SDL2-lSDL2::SDL2main.

我希望使用 vcpkg 在 Windows 实验室中为我的 C++ 图形学生准备一系列库。如果我们的示例项目代码也可以在 Linux 上运行,许多学生也很感激。

我在 Windows 上的 CMake 版本是 3.12.1;3.10.2 在 Ubuntu 上;vcpkg 是昨天(21/08/18)从 github repo 克隆构建的。

0 投票
0 回答
1259 浏览

c++ - E0145 成员“boost::filesystem::path::separator”可能未初始化 & 使用 vcpkg 在 VS2017 中出现 LINK2019 错误

我最近开始在我的 msvc C++ 项目中使用 vcpkg。

我构建了 boost 1.67 并在我的 vs 项目中引用了它。安装 vcpkg 后,我添加了一些库,vcpkg 似乎为我安装了另一个提升并将其链接到我的项目。不幸的是,这种提升不起作用。我现在在构建项目时遇到了数十个错误。其中大部分是 E0145 和 LINK2019。我是 C++ 编程的新手。我想知道如何使用我构建的 boost 而不是为我安装的一个 vcpkg。

例如。错误之一是因为它更改了我的 BOOST_NO_CXX11_CONSTEXPR 并尝试使用 constexpr 而我的电脑不支持它。错误是:

这是我自己的 boost 文件,但所有参考都是 c:\Users\xxx\vcpkg\vcpkg\installed\x86-windows\include\boost\config\detail\suffix.hpp

代替

C:\Users\xxx\Libraries\boost_1_67_0\boost_1_67_0\include\boost-1_67\boost\config\detail\suffix.hpp

我能做些什么来纠正这个问题?vcpkg-boost 的文件结构与我之前使用的 boost 1.67 不同。如果我用 1.67 的文件替换文件,恐怕在升级 vcpkg 及其库时它会被重置。请给我一些建议。

而且我也遇到了错误,例如,