这里是新手。我正在关注这个 SFML flappy bird 教程。我目前停留在创建“启动状态”(或 Logo 加载屏幕)的阶段创建部分。其代码完全与显示的相同here .
我正在使用 xcode 10.1。
项目构建。但是当我尝试运行它时,它崩溃了,我收到以下消息:
Failed to load image "Resouces/res/Splash Background.png". Reason: Unable to open file libc++abi.dylib: terminating with uncaught exception of type std::out_of_range: map::at: key not found (lldb)"
如果我没有理解错的话,它是说它无法在上述路径执行加载图像的操作,因为它无法打开“libc++abi.dylib”。现在该计划正在终止。 (请在这里确认或纠正我,帮助我更好地理解这个问题)。
当我试图寻找“libc++abi.dylib”时,它不见了。相反,我只能找到“libc++abi.td”。
This线程说要在 Link Binary With Libraries 下添加它。那没有产生任何结果。
tutorial显示代码运行,预计会出现“启动状态”或 Logo 屏幕。相反,我的程序崩溃了,我收到了上述错误。
我想知道是否还有其他人遇到过类似问题?
最佳答案
解决了。它是由我这边的错字造成的……抱歉。 我会尽力在这里为那些可能有相同问题的人解释:
游戏 Assets 由 map 管理, map 是“AssetManager”类的私有(private)成员变量。错别字在文件路径。因此, map 从未插入 key ,因为文件路径无效。
当稍后访问 map 时,它将超出范围,因为没有插入任何内容(因为 Assets 未加载)。
打不开“libc++abi.dylib”的错误基本上是 map 超出范围导致的。
关于c++ - "Unable to open file libc++abi.dylib"。程序构建,但在运行时崩溃。使用 xcode 10.1 (10B61),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55331274/