Попробовал повторить всю процедуру http://wiki.qtcentre.org/index.php?title=Building_static_applications
При сборке приложения указывал
CONFIG += static
Ключ -no-exceptions добавил, когда пересобирал Qt? mingwm10.dll как раз отвечает за работу исключений в разных потоках.
Если брать mkspecs для g++, то там линковка mthreads идет, если исключения включены, а mthreads требует как раз mingwm10.dll:
QMAKE_CXXFLAGS_EXCEPTIONS_ON = -fexceptions -mthreads
QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -fno-exceptions
Можно на самом деле. В maillist mingw даже прилагали патч, который позволяет избавиться от этой .dll. Но разработчики не хотят (не хотели во всяком случае, сейчас не знаю как обстоят дела). Не хотели по той причине, что в Windows 95,98,ME нет поддержки статических Thread Local Storage (TLS) обратных вызовов (callbacks) вшитых в PE. На этих операционных системах калбэки работают только с .dll через вызов главной функции dllMain с параметром DLL_PROCESS_ATTACH. Соответственно в более современных ОС семейства Windows уже не обязательно должна быть .dll. Если бы даже разработчики сделали статическую версию этой библиотеки и новая mingw собирала программы под Windows 9x, то в таких приложениях была бы утечка памяти.
просто весит она копейки и под ногами болтается.
Я её всё время забываю, т.к. на многих машинах она присутствует из-за каких-нибудь программ, но не на всех.
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)