首页 文章

找不到gxx个性CODEBLOCKS

提问于
浏览
2

在尝试使用MINGW和CODEBLOCKS运行 c++ 程序时,我收到以下错误

The procedure entry point `_gxx_persopnality _v0` could not be located in the dynamic link library `libstdcc++-6.dll`

http://i50.tinypic.com/256wgfd.png

这是我正在使用的当前设置的图片 . 我正在使用 G++ 而不是gcc

http://i49.tinypic.com/2z8cg8n.png

注意 :

  • 我在路径中设置了MINGW的路径(环境变量)

  • 因为我下载了自己的Mingw附带的QT SDK而得到此错误

  • 多次重新安装Codeblocks和MINGW .

  • 我的路径和系统变量都设置为指向MinGW bin目录的安装位置 .

我该如何解决这个错误?我想使用代码块和qt

1 回答

  • 1

    看起来你自己的MinGW也是 PATH . 优先权是 PATH 中遇到的第一个 . 因此,您似乎在 PATH 中的原始独立MinGW分发之前添加了Qt的MinGW .

    您似乎已经使用原始的MinGW发行版编译了您的应用程序,然后您使用了它,因此您的应用程序现在正在加载错误的 libstdcc++-6.dll (即来自Qt的MinGW的那个),而它应该加载原始MinGW发行版中的那个 .

    您应该选择要用于开发的那个,因为它们具有不同的版本,因此它们的动态库(如 libstdcc++-6.dll )具有不同的布局 .

    因此,如果您只是希望您的应用程序现在正常运行 - 只需将原始MinGW放在_t之前的 PATH 中 .

    如果你想用Qt开始开发(我怀疑你下载它之后是真的),那么你有两个选择来决定:

    • 您希望继续使用原始MinGW发行版并使用它构建Qt应用程序,而不是使用Qt内置的 . 例如,我喜欢这样,即我从不使用QG内置的MinGW,因为它已经过时并且不支持64位Windows目标 . 要做到这一点,你必须使用原始的MinGW发行版从源代码构建Qt .

    • 你不关心(或者懒得从源代码构建Qt),那么你最好将Qt内置的MinGW用于你的开发,并且可能完全删除原来的MinGW发行版 .

    NOTE: 我试图强调的是你不能混合这两个MinGW发行版 . 好吧,那是's not actually true, of course you can if you know when exactly you can do it and how, but that requires in-depth knowledge of linkage process and numerous pitfalls associated with it, which I suppose you don'但是(对不起,如果我为什么,为了避免这些头痛,只是不要混合它们 .

相关问题