【问题标题】:Error when trying to run SFML code尝试运行 SFML 代码时出错
【发布时间】:2015-04-22 04:04:42
【问题描述】:

每当我尝试运行我的 SFML 程序时都会遇到错误:

在动态链接库libstdc++-6.dll中找不到过程入口点_ZSt24__throw_out_of_range_fmtPKcz

这是我的代码:

#include <cstddef>
#include <iostream>
#include <SFML/Network.hpp>

sf::TcpSocket socket;
sf::IpAddress sender;
unsigned short port;

int main() {
    char data[100];
    std::size_t received;

    // TCP socket:
    if (socket.receive(data, 100, received) != sf::Socket::Done)
    {
        // error...
    }
    std::cout << "Received " << received << " bytes" << std::endl;

    // UDP socket:
    //sf::IpAddress sender;
    //unsigned short port;
    //if (socket.receive(data, 100, received, sender, port) != sf::Socket::Done)
    //{
        // error...
    //}
    std::cout << "Received " << received << " bytes from " << sender << " on port " << port << std::endl;
    return 0;
}

【问题讨论】:

    标签: c++ runtime-error


    【解决方案1】:

    这意味着您已链接到不是为您的编译器构建的 SFML 版本。你应该确保你有正确的版本。您也可以自己构建它,确保它能够正常工作。

    【讨论】:

    • 对不起,我是一个真正的菜鸟......我怎么知道我是否有正确的版本?我如何自己构建 SFML?
    • 你应该知道你有什么编译器,你下载了哪个版本的SFML。并且自己构建 SFML,与他们的官方 tutorial 完全不同。
    • 我正在使用 cmake 构建,但我不断收到此错误:程序无法启动,因为您的计算机缺少 libgmp-10.dll。我看了看,文件 libgmp-10.dll 在 bin 文件夹中。帮忙?
    • 您的可执行文件在 bin 文件夹中吗? bin 文件夹可能不是 IDE 启动软件的工作目录。
    • 你可能建的那个。如果它要求一个 dll 文件,这意味着你正在尝试运行一些东西。
    猜你喜欢
    • 1970-01-01
    • 2014-06-06
    • 2022-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-13
    • 1970-01-01
    相关资源
    最近更新 更多