【问题标题】:The procedure entry point _ZNSt7_cxx1112basic_stringlcSt11char_traitslcESalcEEC1Ev could not be located in the dynamic link library在动态链接库中找不到过程入口点_ZNSt7_cxx1112basic_stringlcSt11char_traitslcESalcEEC1Ev
【发布时间】:2017-08-01 23:48:39
【问题描述】:

我在尝试使用 std::string 时遇到了巨大的困难。程序编译得很好,但是当我运行程序时,我收到这个错误:error

我在谷歌上到处找,没有找到关于如何解决这个问题的东西。我也尝试过以不同的方式编写我的代码,看看这是否能告诉我什么。

std::string yourName;
std::cout << "What is your name?";
std::cin >> yourName;
std::cout << "Hello, " << yourName << std::endl;

尽管进行了重写,但我仍然遇到同样的错误,而且我没有忘记包含 iostream 和字符串头文件。

我使用的是 GCC 编译器,我的编译代码是 g++ -std=c++14 test.cpp -o test.exe。我也尝试过使用编译代码g++ test.cpp -o test.exe。这并没有解决错误。

我之前在 Stack Overflow 上问过这个问题,但我没有得到一个清晰易懂的答案,很可能是因为我是一个完全的编程初学者。话虽如此,有人可以回答我可能导致此问题的原因以及如何用简单的英语解决它吗?

【问题讨论】:

  • 程序在运行时没有加载正确的 DLL。为什么会发生这种情况,这是您需要自己弄清楚的事情。在当前登录 stackoverflow.com 的每个人中,只有一个人知道您的计算机上安装了哪些 DLL,或者知道在哪里(当然就是您)。该错误是因为程序与一个版本的 C++ 运行时 DLL 链接,但最终尝试在运行时加载不同的 DLL。这回答了这个错误意味着什么的问题。您必须自己弄清楚原因。
  • 非常感谢您的回答!
  • #include &lt;string&gt;了吗?

标签: c++ gcc c++14 stdstring


【解决方案1】:

我从这个链接下载了 GCC:Source Forge 并重新安装了 GCC。我的问题已成功解决。

【讨论】:

  • 从链接安装后,是否在路径中添加了“yourinfohere”MinGW/bin?
  • 是的,您需要将系统 PATH 更新为安装文件夹中的路径。这终于对我有用了。
【解决方案2】:

你可以使用

g++ <file> -static-libstdc++ -static-libgcc

我有同样的问题,但它对我有用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-19
    • 2013-03-19
    • 2013-01-22
    • 1970-01-01
    • 1970-01-01
    • 2012-09-09
    相关资源
    最近更新 更多