【问题标题】:"Unable to open file libc++abi.dylib". Program builds, but crashes upon being run. Using xcode 10.1 (10B61)“无法打开文件 libc++abi.dylib”。程序构建,但在运行时崩溃。使用 xcode 10.1 (10B61)
【发布时间】:2019-08-15 07:25:05
【问题描述】:

这里是新手。我正在关注这个 SFML 飞扬的鸟教程。我目前被困在制作“Splash State”(或徽标加载屏幕)的阶段创建的这一部分。其代码完全相同here显示的相同。

我使用的是 xcode 10.1。

项目构建。但是当我尝试运行它时,它崩溃了,我收到了以下信息:

无法加载图像“Resouces/res/Splash Background.png”。原因:无法打开文件 libc++abi.dylib:以 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 表示代码运行,预计会出现“启动状态”或徽标屏幕。相反,我的程序崩溃了,我收到了上述错误。

我想知道是否有其他人遇到过类似的问题?

【问题讨论】:

    标签: c++ xcode sfml


    【解决方案1】:

    解决了。它是由我的错字造成的......对不起。 我会尽力在这里为可能有同样问题的人解释一下:

    游戏资源由地图管理,地图是“AssetManager”类的私有成员变量。错字在文件路径中。因此,由于文件路径无效,映射从未插入密钥。

    稍后访问地图时,它会超出范围,因为没有插入任何内容(因为资产没有加载)。

    基本上,没有打开“libc++abi.dylib”的错误是地图超出范围造成的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-06
      • 2023-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-26
      • 2017-08-09
      • 1970-01-01
      相关资源
      最近更新 更多