Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: labview от Август 11, 2010, 16:22



Название: Debug компилируется, а Release не хочет
Отправлено: labview от Август 11, 2010, 16:22
Привет!

Сделал первую в жизни прогу с Qt. Всё было бы ок, но дибаг-версия ну очень большая (я имею ввиду все принадлежащие к ней библиотеки). Решил сделать релиз-версию. К сожалению компайлер (или линкер) выдаёт ошибку:
Код:
mingw32-make.exe[1]: Leaving directory `D:/C++/LVPTerminal-build-desktop' 
C:\MinGW\bin\mingw32-make.exe: Leaving directory `D:/C++/LVPTerminal-build-desktop'
c:/Qt/4.6.3/lib/libqtmain.a(qtmain_win.o):qtmain_win.cpp:(.text+0x1c2): undefined reference to `_Unwind_Resume'
c:/Qt/4.6.3/lib/libqtmain.a(qtmain_win.o):qtmain_win.cpp:(.text$_ZN7QVectorIPcE7reallocEii[QVector<char*>::realloc(int, int)]+0x187): undefined reference to `_Unwind_Resume'
c:/Qt/4.6.3/lib/libqtmain.a(qtmain_win.o):qtmain_win.cpp:(.eh_frame+0x12): undefined reference to `__gxx_personality_v0'
collect2: ld returned 1 exit status
mingw32-make.exe[1]: *** [release/LVPTerminal.exe] Error 1
C:\MinGW\bin\mingw32-make.exe: *** [release] Error 2
The Prozess "C:/MinGW/bin/mingw32-make.exe" wurde mit dem Rückgabewert %2 beendet.
Fehler beim Erstellen des Projekts LVPTerminal (Ziel: Desktop)
Beim Ausführen des Build-Schritts 'Make'

Настройки проекта следущие:
Код:
#-------------------------------------------------
#
# Project created by QtCreator 2010-08-04T23:00:29
#
#-------------------------------------------------

QT       += core gui

TARGET = LVPTerminal
TEMPLATE = app
DEPENDPATH += .
INCLUDEPATH += ./qextserialport-1.2win-alpha

SOURCES += main.cpp \
    MainWidget.cpp \
    DataOutputWidget.cpp \
    SettingsWidget.cpp \
    SerialThread.cpp \
    MyTextEdit.cpp

HEADERS  += \
    MainWidget.h \
    DataOutputWidget.h \
    SettingsWidget.h \
    SerialThread.h \
    MyTextEdit.h

FORMS    +=


CONFIG(debug, debug|release):LIBS  += D:/C++/LVPTerminal/qextserialport-1.2win-alpha/build/qextserialportd.dll
else:LIBS  += D:/C++/LVPTerminal/qextserialport-1.2win-alpha/build/qextserialport.dll

unix:DEFINES   = _TTY_POSIX_
win32:DEFINES  = _TTY_WIN_

Плюс настройки релиза в Qt Creator на приложеном скрине.

Скажите пожалуйста что сделать чтобы компайлер не ругался.

Спасибо.


Название: Re: Debug компилируется, а Release не хочет
Отправлено: labview от Август 11, 2010, 18:00
Погуглил и нашёл ответ. Может быть кому нибуть будет полезно. И так это связано в несовпадением версий MinGW с которой был собран Qt и заинсталлированой версией MinGW.

Поэтому я деинсталировал всё (у меня были MinGW и Qt заинсталлированы до этого поотдельности) и заинсталировал Qt SDK включая MinGW.

Теперь всё заработало. Кстати после переключения с Debug на Release и наоборот, нужно почистить проект и выполнить qmake, оба пункта находятся в верхнем меню Qt Creator.