c++ - "Unable to open file libc++abi.dylib"。程序构建,但在运行时崩溃。使用 xcode 10.1 (10B61)

标签 c++ xcode sfml

这里是新手。我正在关注这个 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/

相关文章:

c++ - 带有大列表的 STL set_union

c++ - int 与 unsigned char

ios - 我如何使用 swift 在 ios 中的另一个 View Controller 中而不是当前 View Controller 中显示从数据库检索的数据

IOS:主目录错误

c++ - SFML - 对象静态定义

c# - PInvoke:将文本从 C++ 返回到 C# 时出错

c++ - boost fibers work_stealing 屏障导致段错误

iphone - 检查仪器中的内存分配

c++ - 将引用作为函数参数传递不起作用

c++ - 通过左键单击聚焦 Sprite ,然后再次通过左键单击移除焦点。 (C++ 和 SFML 2.2)