Michael Schmitt wrote: > Angus, > > using MinGW, I get tons of warnings like this one: > > C:/msys/home/Brother/qt-3/include/private/qucom_p.h:393: warning: inline > function 'virtual void QUType_int::clear(QUObject*)' is declared as > dllimport: attribute ignored.
Me too. They're a PITA. > I am quite sure that I didn't see such warnings a couple of days ago. > Has it something to do with the recent configure changes (-DQT_DLL)? Yes. > What was the rationale behind these changes? They are needed to build against the qt3.dll. See this code from qglobal.h: #if defined(Q_OS_WIN) # if defined(QT_NODLL) # undef QT_MAKEDLL # undef QT_DLL # elif defined(QT_MAKEDLL) /* create a Qt DLL library */ # if defined(QT_DLL) # undef QT_DLL # endif # define Q_EXPORT __declspec(dllexport) # define Q_TEMPLATEDLL # define Q_TEMPLATE_EXTERN # undef Q_DISABLE_COPY /* avoid unresolved externals */ # elif defined(QT_DLL) /* use a Qt DLL library */ # define Q_EXPORT __declspec(dllimport) # define Q_TEMPLATEDLL # ifndef Q_TEMPLATE_EXTERN # if defined(Q_CC_MSVC_NET) # define Q_TEMPLATE_EXTERN extern # else # define Q_TEMPLATE_EXTERN # endif # endif # undef Q_DISABLE_COPY /* avoid unresolved externals */ # endif #elif defined(Q_OS_LINUX) && defined(Q_CC_BOR) Specifically, QT_DLL is used to specify the "__declspec(dllimport)" attribute when lyx is built against qt3.dll. It may well be that if you're linking statically then this will completely bugger things up for you. I guess you'll see when you link. If this does indeed mess things up for you, then we'll need to play around with config/qt.m4 which contains this code: dnl Preprocessor flags case ${host} in *mingw*) QT_CPPFLAGS="-DQT_DLL -DQT_CLEAN_NAMESPACE -DQT_GENUINE_STR";; *) QT_CPPFLAGS="-DQT_CLEAN_NAMESPACE -DQT_GENUINE_STR";; esac AC_SUBST(QT_CPPFLAGS) It may be that we need to refine the test to take account of your static build options. Angus