• 14866阅读
  • 5回复

[提问]Qt Creator 错误提示:qtmain_win.cpp:-1: error: undefined reference to `__gxx_personality_sj0' [复制链接]

上一主题 下一主题
离线tianyongtao
 
只看楼主 倒序阅读 楼主  发表于: 2011-09-23


1)问题

按照紫侠博客上的教程页操作:
一、Qt Creator的安装和hello world程序的编写
在操作完第八步:
8.点击Finish,完成工程的建立。

运行‘Ctrl+R’,出现以下错误

qtmain_win.cpp:-1: error: undefined reference to `__gxx_personality_sj0'
qtmain_win.cpp:-1: error: undefined reference to `_Unwind_SjLj_Register'
qtmain_win.cpp:-1: error: undefined reference to `_Unwind_SjLj_Unregister'
qtmain_win.cpp:-1: error: undefined reference to `_Unwind_SjLj_Resume'
:-1: error: collect2: ld returned 1 exit status
2)我的软件安装和设置情况:
Qt Creator的版本:2.2.82(2.3.0 Beta),安装目录:C:\Qt\qtcreator-2.2.82;
Qt 版本:4.4.0,安装目录:f:\Qt\4.4.0\
Qt Creator 的project中的Build Enviroment中的path设置:PATH
C:\Qt\qtcreator-2.2.82\mingw\bin;f:\Qt\4.4.0\lib;f:\Qt\4.4.0\bin;



3)我的工程目录:
F:\Qt_exercise\helloworld
4)备注:
我在命令行编译环境中,用
qmake –project、
qmake
make
是可以编译成功的。
但为什么在Qt Creatror中就不行呢?
请帮忙解决
离线dbzhang800

只看该作者 1楼 发表于: 2011-09-23
Re:Qt Creator 错误提示:qtmain_win.cpp:-1: error: undefined reference to `__gxx_personality_sj0&# ..
真够折腾的,你的 Qt4.4 是从哪儿来的?为什么不用官方提供的??

题外:你的Qt4.4.0是MinGW编译的不假,但是MinGW按照异常处理方式不同,又两种

* DW2
* SJLJ

MinGW官方和Qt官方QtSDK中的MinGW都是用前者。但是你这个Qt4编译用的MinGW采用后者。

你要么SJLJ版的MinGW,要么换个正常的Qt
离线tianyongtao
只看该作者 2楼 发表于: 2011-09-26
Re:Qt Creator 错误提示:qtmain_win.cpp:-1: error: undefined reference to `__gxx_personality_sj0&# ..
问题解决了,但是还是不明白其中的道理:
有两个MinGw:一个是Qt Creator自带的MinGw runtime,一个是MinGw(X86,32位);在Build setting里面的tool chain选用MinGw(X86,32位);即可顺利编译,出现可执行文件。

离线sushan2009
只看该作者 3楼 发表于: 2011-10-02
Re:Qt Creator 错误提示:qtmain_win.cpp:-1: error: undefined reference to `__gxx_personality_sj0&# ..
  

只看该作者 4楼 发表于: 2011-10-07
回 2楼(tianyongtao) 的帖子
你是怎么解决的!我用qt create也出现了这种问题!help!万分感谢!!
离线dbzhang800

只看该作者 5楼 发表于: 2011-10-07
Re:回 2楼(tianyongtao) 的帖子
引用第4楼键盘爱鼠标于2011-10-07 21:05发表的 回 2楼(tianyongtao) 的帖子 :
你是怎么解决的!我用qt create也出现了这种问题!help!万分感谢!!



简单地说,就是
他的MinGW来源不正(既不是从Qt官方下载的,也不是从MinGW官方下载的)。有可能是TDM-GCC一类的第三方MinGW
快速回复
限100 字节
 
上一个 下一个