c++ - 函数 to_string() 未使用 g++ mingw --w64 5.3.0 解析

标签 c++ eclipse c++11

在 Eclipse 中,我使用 mingw-w64 V5.3.0 作为编译器,并且启用了 C++11(这是以下相关帖子中的解决方案 herehere)。我的编译命令如下所示(来自 eclipse 控制台窗口):

g++ -std=c++11 -O0 -g3 -Wall -c -fmessage-length=0 -o "src\Launch.o""..\src\Launch.cpp"

我尝试运行的简单代码如下:

#include <stdio.h>
#include <iostream>
#include <string>

int main()
{
    std::string test = std::to_string(0);
    std::cout <<"HI" << std::endl;
    return 0;
}

程序编译但出现问题中所述的错误。在没有 to_string 行的情况下运行它可以正常工作。早在 2012 年就有人提出 MingW 的 to_string() 有问题,但在后来的版本中得到解决,显示为 here .

下面的屏幕截图:

enter image description here

控制台输出如下:

enter image description here

以下是我直接从 .exe 运行代码时收到的错误:

enter image description here

如评论中所述,该问题是一个链接问题,但它正确链接到与 string 位于同一目录中的 iostream

最佳答案

Eclipse 正在 System32 中查找库和驱动程序文件,尽管 PATH 和 Eclipse 指向计算机上的 MingW64 编译器。 Eclipse 还显示它已正确链接到 MingW64 库,因为当右键单击和打开减速显示正确时, header 的路径是正确的。为什么它会在运行时在 System32 中查找库,我不明白。

通过将整个 MingW64 编译器驱动程序文件夹复制到 Windows 上的 System32 文件夹中,问题已“解决”。

关于c++ - 函数 to_string() 未使用 g++ mingw --w64 5.3.0 解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36471568/

相关文章:

C# 指针、迭代器和泛型

c++ - 使用来自另一个项目(目录)的头文件

c++ - Eclipse CDT 显示一些错误,但项目已成功构建

java - 如何在不导出和导入的情况下跨多个系统共享用户库

c++ - 使用 std::map 时只读成员的错误递减

c++ - std::aligned_storage 的奇怪行为

c++ - "polymorphically"的唯一方法是通过定义基类来声明非专用模板类型的成员吗?

c++ - 从 QTableWidget 行/单元格拖动在 Windows 中创建可放置文件链接

css - 如何配置 eclipse 以自动完成 html/php 文件中的 Css 类/id?

c++ - std::move 模板参数是如何推导出来的?