【问题标题】:trying to use the basic tutorial for ogre in code::blocks produces undefined references to '__unwind_resume' and '__gxx_personality_v0'尝试在 code::blocks 中使用 ogre 的基本教程会产生对 '__unwind_resume' 和 '__gxx_personality_v0' 的未定义引用
【发布时间】:2013-03-01 09:57:47
【问题描述】:

在关注 this 教程时,我收到以下错误:未定义引用“__unwind_resume”和未定义引用“__gxx_personality_v0”

产生这些未定义参考错误的文件是 libboost_system-mgw47-mt-1_51.a。我已经尝试了以下修复无济于事:

  1. 强制 Code::blocks 使用 g++ 而不是 gcc。 结果:没有变化

  2. 将-lstdc++ 添加到链接器链接到的库列表中。 结果:除了 __unwind_resume 和 __gxx_personality_v0 未定义的参考错误之外,还有 39 个错误。

  3. 安装最新的 MingW 并让我的编译器使用它而不是它自己的版本 结果:编译器错误现在超过最大值:( image2 http://s24.postimage.org/3u6tik4dh/moreerrors2.jpg

感谢任何解决这些错误的帮助,我真的很想让这个东西正常工作。

【问题讨论】:

    标签: c++ boost compiler-errors ogre


    【解决方案1】:

    我找到了部分解决方案,我让编译器创建一个可执行文件,但它当前抛出 OGRE::filenotfoundexception 并终止。我通过下载 boost_1_53_0 并构建 libboost_system-mgw47-mt-1-53.a 并链接到它而不是另一个来做到这一点,然后它在启动时给了我错误“程序入口点 __gxx_personality_v0 无法位于动态链接库 libstdc++-6.dll。”因此,为了解决这个问题,我去了 orwell 的 mingw 文件夹,发现该文件夹中的 libstdc++-6.dll 大小约为 800 KB,而使用的一个代码块是 5 mb,我将它们切换出来看看它是否有效并且得到了可执行文件现在正在运行,但它抛出上述异常并终止。

    EDIT1:奇怪的是,只需添加一个名为 resources.cfg 的空白文件(导致异常的文件)即可使程序运行,但现在出现一个 Ogre 窗口,要求提供渲染系统

    EDIT2:在意识到我应该将所有内容从 ogre 的 bin/release 目录复制到我的可执行文件目录(以及将媒体目录复制到我的可执行文件目录中的 2 个文件夹)之后,我做到了,一切终于完美运行!

    【讨论】:

      猜你喜欢
      • 2012-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-24
      • 2018-06-12
      • 2016-08-12
      • 2011-10-24
      相关资源
      最近更新 更多