I'm compiling a large app (actually several apps, several .so files) using Qwt and Qt. Normally the build system uses the Qt and Qwt officially installed on our RH5 workstations, but I want to build the app with a different version of qwt built from source downloaded yesterday. I continue to use the installed Qt 4.3.4 (yeah, it's old.) Qwt itself built fine (using just qmake-qt4, make, make install) and I've adjusted the paths and stuff in the app's build system's files. The new qwt is in /home/darenw/hack/ But it won't compile. I get these errors:

/home/darenw/hack/lib/qwt-5.0.2/include/qwt_plot_canvas.h:19: error: multiple types in one declaration
/usr/include/QtCore/qset.h:290: error: definition of 'casa::QSet<T> QList<T>::toSet() const' is not in namespace enclosing 'QList<T>'
/usr/include/QtCore/qset.h:290: error: prototype for 'casa::QSet<T> QList<T>::toSet() const' does not match any in class 'QList<T>'
/usr/include/QtCore/qlist.h:304: error: candidate is: QSet<T> QList<T>::toSet() const
/usr/include/QtCore/qset.h:290: error: template definition of non-template 'casa::QSet<T> QList<T>::toSet() const'
/usr/include/QtCore/qset.h: In member function 'casa::QSet<T> QList<T>::toSet() const':
/usr/include/QtCore/qset.h:292: error: reference to 'QSet' is ambiguous
/usr/include/QtCore/qlist.h:63: error: candidates are: template<class T> struct QSet
/usr/include/QtCore/qset.h:54: error: template<class T> class casa::QSet
/usr/include/QtCore/qset.h:292: error: expected primary-expression before '>' token
...hundreds more errors follow....

What are likely explanations for this, and ways to fix this? Is Qt4.3.4 too old? Are there any diagnostics checks to pin down the exact problem?