gpt4 book ai didi

c++ - 使用 minGW 编译基于 CMake 的项目

转载 作者:行者123 更新时间:2023-11-27 23:54:43 24 4
gpt4 key购买 nike

我想在使用 MinGW (MSYS2) 编译的 Windows 项目中使用 SignalR。据我所知,我无法链接到用另一个编译器(即 VC++)编译的库 (dll)。

因此,我需要用 MinGW 编译 SignalR。这里是存储库:

https://github.com/aspnet/SignalR-Client-Cpp

该项目基于 CMake 而不是标准的 Makefile。这就是我所做的:

尝试按照此处所述编译 Cpp Rest SDK:

https://github.com/Microsoft/cpprestsdk/wiki/How-to-build-for-Linux

导致此输出:

$ cmake .. -DCMAKE_BUILD_TYPE=Release -- Building for: Visual Studio 15 2017 -- The C compiler identification is MSVC 19.10.25019.0 -- The CXX compiler identification is MSVC 19.10.25019.0 -- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe -- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.10.25017/bin/HostX86/x86/cl.exe -- works

恐怕它仍在使用 MSVC 编译器,因此输出二进制文件与我的应用程序不兼容。

我应该如何编译这些库?

最佳答案

CMake 本身不构建任何东西。而是为 make、MSBuild、Ninja 等生成配置文件。每个平台都有其默认生成器。对于 Windows,即 Visual Studio/NMake。

您可以使用 CMake’s -G option 手动选择生成器.一些生成器名称包含空格。确保在它们周围加上引号。

关于c++ - 使用 minGW 编译基于 CMake 的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43413717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com