相关疑难解决方法(0)

如何安装MinGW-w64和MSYS2?

我正在尝试构建一些开源库.我需要包管理系统来轻松下载依赖项.起初我正在使用MinGW+MSYS.但包含的包裹有限.有人告诉我使用MinGW-w64 + MSYS2.

mingw-w64-install这里下载了.运行时,它会报告以下错误.怎么解决?

在此输入图像描述

顺便说一句,从MinGW-w64下载页面,我看到了很多下载链接.甚至Cygwin也被列入名单.怎么CygwinMinGW-w64相关?

在此输入图像描述

我目前的理解是,到目前为止MinGW+MSYS,MSYS只是MinGW的一个很好的插件,而在MinGW-w64 + MSYS2,MSYS2是独立的,MinGW-W64只是一组可以使用的库.就像Cygwin可以下载许多不同的包装一样.

cygwin mingw msys mingw-w64 msys2

77
推荐指数
2
解决办法
9万
查看次数

VS 自动链接 Windows 上随 vcpkg 安装的 SDL2 库

据我所知,这与现有问题并不重复。这个问题专门涉及 Visual Studio 的自动链接 SDL2 库。

我已经使用vcpkgx64-windows安装了 SDL2 (变体):

vcpkg install sdl2 --triplet x64-windows
Run Code Online (Sandbox Code Playgroud)

我已经为 Visual Studio 提供了 vpkg 库:

vcpkg integrate install
Run Code Online (Sandbox Code Playgroud)

我的 VS 2019 项目配置为使用该Console子系统,我的主程序如下所示:

vcpkg install sdl2 --triplet x64-windows
Run Code Online (Sandbox Code Playgroud)

为什么我需要指定SDL_MAIN_HANDLED?似乎由于SDLmain2.lib某种原因没有发生自动链接?

如果我不指定SDL_MAIN_HANDLED,链接将失败:

vcpkg integrate install
Run Code Online (Sandbox Code Playgroud)

我也尝试过添加extern "C"声明main()但无济于事。

我已经用 SDL2 编写了很多应用程序,但这是我第一次使用 vcpkg 来定位它。

c++ sdl visual-studio sdl-2 vcpkg

6
推荐指数
2
解决办法
4170
查看次数

C++ 字符串类型未运行

我在运行以下程序时遇到困难:

#include <string>
#include <iostream>

using namespace std;

int main()
{
    cout << "First line.";
    string s = "Hello World";
    cout << " After string.";
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

它编译得很好,但运行时不产生任何输出。

如果我注释掉该string s = "Hello World";行,则程序将按First Line. After string.预期运行并输出。

似乎每当我尝试声明一个字符串时,程序都会停止。当字符串位于未调用的函数内部时,也会发生这种情况。

我正在 Windows 上的 VSCode 中构建程序,我的编译器和版本是:g++ (x86_64-posix-sjlj-rev0, Built by MinGW-W64 project) 8.1.0

c++ string

0
推荐指数
1
解决办法
271
查看次数

标签 统计

c++ ×2

cygwin ×1

mingw ×1

mingw-w64 ×1

msys ×1

msys2 ×1

sdl ×1

sdl-2 ×1

string ×1

vcpkg ×1

visual-studio ×1