2012-01-10 72 views
3

當嘗試切換到GCC 4.6.2在QT(在工具鏈設置吧),我發現了以下錯誤:未定義參考`_Unwind_Resume」與QT

c:\ndk_buildrepos\qt-desktop\src\winmain\qtmain_win.cpp:93: error: undefined reference to `_Unwind_Resume' 

不知道如何解決它?

//.pro 
QMAKE_CXXFLAGS += -std=c++0x 

SOURCES += \ 
    main.cpp 
+2

你可能用gcc而不是g ++鏈接?請至少顯示鏈接器行。 – PlasmaHH 2012-01-10 16:52:35

+0

@PlasmaHH我可以從哪裏獲得鏈接器行? – smallB 2012-01-10 16:54:43

+0

添加您的.pro文件。 – 2012-01-10 18:33:09

回答

1
  1. 我下載並單獨安裝在Qt庫(我沒有下載整個SDK)
  2. 我寫了一個簡單的Hello Qt的窗口..
  3. 我和我的dev-CPP掛靠(因爲開發-CPP使用MinGW的爲好)我的版本實際上3.4.x不4.4.x到...
  4. 我編譯使用QMAKE Qt的方式..等。
  5. 我得到了一個錯誤你也經歷過......

... 「_Unwind_Resume ......」 ......

我的解決方法(簡單,很簡單的)

  1. 運行的Qt X.X.X. (編譯調試庫)或..
  2. 運行qtvars.bat(取決於Qt的版本使用的是)我的是4.8.0 ..
  3. 1和2是相同的東西..

我的一擊讓再次..它運行.. :)

PS它解決了我的問題:)我希望它也能解決你的問題。

4

未定義的對_Unwind_Resume的引用是由與您試圖鏈接的庫所使用的堆棧展開方法不同的堆棧展開方法進行編譯而引起的。

如上所述,解決方案是使用相同的編譯器重建庫。只是注意到未來谷歌訪問者的原因。