Reading the compiler website of Qt, I thought I might give compilation of Qt on my ancient Linux system a try. The gcc version is 3.3.3. After disabling QtConcurrent and WebKit in the `configure' script by setting
canBuildWebKit="no"
canBuildQtConcurrent="no"
canBuildWebKit="no"
canBuildQtConcurrent="no"
To copy to clipboard, switch view to plain text mode
I ran
./configure -prefix /opt/qt-embedded-lgpl-4.7.1 -prefix-install -embedded x86 -nomake examples -nomake demos && make
./configure -prefix /opt/qt-embedded-lgpl-4.7.1 -prefix-install -embedded x86 -nomake examples -nomake demos && make
To copy to clipboard, switch view to plain text mode
and got the following errors:
g++ -c -pipe -fno-exceptions -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -O2 -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -DELF_INTERPRETER=\"/lib/ld-linux.so.2\" -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -DQT_HAVE_MMX -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/qws/linux-x86-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-x86 -Iglobal -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-x86 -o .obj/release-shared-emb-x86/qregexp.o tools/qregexp.cpp
../../src/corelib/tools/qmap.h: In member function `QMap<Key, T>::iterator
QMap<Key, T>::insert(const Key&, const T&) [with Key = int, T = int]':
tools/qregexp.cpp:1547: instantiated from here
../../src/corelib/tools/qmap.h:561: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
../../src/corelib/tools/qmap.h: In member function `QMap<Key, T>::iterator
QMap<Key, T>::insertMulti(const Key&, const T&) [with Key = int, T = int]':
tools/qregexp.cpp:629: instantiated from here
../../src/corelib/tools/qmap.h:597: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
../../src/corelib/tools/qmap.h: In member function `void QMap<Key,
T>::detach_helper() [with Key = int, T = int]':
../../src/corelib/tools/qmap.h:202: instantiated from `void QMap<Key, T>::detach() [with Key = int, T = int]'
tools/qregexp.cpp:559: instantiated from here
../../src/corelib/tools/qmap.h:754: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
../../src/corelib/tools/qmap.h: In member function `QMap<Key, T>::iterator
QMap<Key, T>::erase(QMap<Key, T>::iterator) [with Key = int, T = int]':
tools/qregexp.cpp:3454: instantiated from here
../../src/corelib/tools/qmap.h:715: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
make[1]: *** [.obj/release-shared-emb-x86/qregexp.o] Error 1
make[1]: Leaving directory `/src/qt/free/qt-everywhere-opensource-src-4.7.1/src/corelib'
make: *** [sub-corelib-make_default-ordered] Error 2
g++ -c -pipe -fno-exceptions -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -O2 -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -DELF_INTERPRETER=\"/lib/ld-linux.so.2\" -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -DQT_HAVE_MMX -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/qws/linux-x86-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-x86 -Iglobal -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-x86 -o .obj/release-shared-emb-x86/qregexp.o tools/qregexp.cpp
../../src/corelib/tools/qmap.h: In member function `QMap<Key, T>::iterator
QMap<Key, T>::insert(const Key&, const T&) [with Key = int, T = int]':
tools/qregexp.cpp:1547: instantiated from here
../../src/corelib/tools/qmap.h:561: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
../../src/corelib/tools/qmap.h: In member function `QMap<Key, T>::iterator
QMap<Key, T>::insertMulti(const Key&, const T&) [with Key = int, T = int]':
tools/qregexp.cpp:629: instantiated from here
../../src/corelib/tools/qmap.h:597: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
../../src/corelib/tools/qmap.h: In member function `void QMap<Key,
T>::detach_helper() [with Key = int, T = int]':
../../src/corelib/tools/qmap.h:202: instantiated from `void QMap<Key, T>::detach() [with Key = int, T = int]'
tools/qregexp.cpp:559: instantiated from here
../../src/corelib/tools/qmap.h:754: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
../../src/corelib/tools/qmap.h: In member function `QMap<Key, T>::iterator
QMap<Key, T>::erase(QMap<Key, T>::iterator) [with Key = int, T = int]':
tools/qregexp.cpp:3454: instantiated from here
../../src/corelib/tools/qmap.h:715: error: template-argument `
QMapData::<anonymous enum>' uses anonymous type
make[1]: *** [.obj/release-shared-emb-x86/qregexp.o] Error 1
make[1]: Leaving directory `/src/qt/free/qt-everywhere-opensource-src-4.7.1/src/corelib'
make: *** [sub-corelib-make_default-ordered] Error 2
To copy to clipboard, switch view to plain text mode
Can anyone please tell me how I can successfully compile using gcc 3.3.3? Specifically I need to link against libstdc++.so.5 because of other system components, and a newer version like gcc 3.4.6 does already ship with libstdc++.so.6. (it works with 3.4.6, but I then get the warning
/usr/bin/ld: warning: libstdc++.so.6, needed by /opt/qt-embedded-lgpl-4.7.1/lib/libQtGui.so, may conflict with libstdc++.so.5
/usr/bin/ld: warning: libstdc++.so.6, needed by /opt/qt-embedded-lgpl-4.7.1/lib/libQtGui.so, may conflict with libstdc++.so.5
To copy to clipboard, switch view to plain text mode
--tst.
Bookmarks