Details
-
Bug
-
Resolution: Done
-
P2: Important
-
4.5.3, 4.6.0, 4.6.1, 4.6.2, 4.6.3, 4.7.0
-
None
-
Operating system : Linux Ubuntu 9.10
Compiler : arm-linux-g++
Qt : qt-embedded-linux-opensource-src-4.5.3
Configure options : -silent -force-pkg-config -embedded arm -hostprefix /home/jeremie/developpements/BEFCompas/software/bsp/buildroot/build_armv5te/staging_dir/usr/local/QtEmbedded-4.5.3-arm -opensource -confirm-license -largefile -no-qt3support -depths 16,18 -qt-gfx-linuxfb -qt-kbd-usb -no-kbd-sl5000 -release -shared -fast -no-exceptions -no-optimized-qmake -little-endian -nomake demos -nomake examples -no-pch -no-xinerama -no-cups -no-nis -no-accessibility -no-separate-debug-info -no-rpath -DQT_NO_QWS_CURSOROperating system : Linux Ubuntu 9.10 Compiler : arm-linux-g++ Qt : qt-embedded-linux-opensource-src-4.5.3 Configure options : -silent -force-pkg-config -embedded arm -hostprefix /home/jeremie/developpements/BEFCompas/software/bsp/buildroot/build_armv5te/staging_dir/usr/local/QtEmbedded-4.5.3-arm -opensource -confirm-license -largefile -no-qt3support -depths 16,18 -qt-gfx-linuxfb -qt-kbd-usb -no-kbd-sl5000 -release -shared -fast -no-exceptions -no-optimized-qmake -little-endian -nomake demos -nomake examples -no-pch -no-xinerama -no-cups -no-nis -no-accessibility -no-separate-debug-info -no-rpath -DQT_NO_QWS_CURSOR
-
9f6bcd7ff39462ec2028ddbe27fc04911b856018
Description
The bug is occurring when compiling Qt Embedded with the configure options plugin-kbd*
When doing so, the compilation of the USB keyboard driver will crash on :
arm-linux-g++ -c -include .pch/release-shared-emb-arm/QtGui -pipe -I/tmp/qt-embedded-linux-opensource-src-4.5.0-snapshot-20080917/include/ -O2 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_GUI_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -DPNG_NO_ASSEMBLER_CODE -DQT_RASTER_IMAGEENGINE -DQT_RASTER_PAINTENGINE -DQT_NO_FONTCONFIG -DFT2_BUILD_LIBRARY -DFT_CONFIG_OPTION_SYSTEM_ZLIB -DQT_NO_OPENTYPE -DQT_NO_STYLE_MAC -DQT_NO_STYLE_WINDOWSVISTA -DQT_NO_STYLE_WINDOWSXP -DQT_NO_STYLE_WINDOWSCE -DQT_NO_STYLE_WINDOWSMOBILE -DQ_INTERNAL_QAPP_SRC -DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/qws/linux-arm-g++ -I. -I../../include/QtCore -I../../include/QtNetwork -I../../include -I../../include/QtGui -I.rcc/release-shared-emb-arm -I../3rdparty/libpng -I../3rdparty/zlib -I../3rdparty/freetype/src -I../3rdparty/freetype/include -I../3rdparty/freetype/builds/unix -I../3rdparty/harfbuzz/src -Idialogs -I.moc/release-shared-emb-arm -I.uic/release-shared-emb-arm -o .obj/release-shared-emb-arm/qkbdusb_qws.o embedded/qkbdusb_qws.cpp
embedded/qkbdusb_qws.cpp:89: error: 'QWSUsbKeyboardHandler' has not been declared
embedded/qkbdusb_qws.cpp:89: error: ISO C++ forbids declaration of 'QWSUsbKeyboardHandler' with no type
embedded/qkbdusb_qws.cpp: In function 'int QWSUsbKeyboardHandler(const QString&)':
embedded/qkbdusb_qws.cpp:90: error: only constructors take base initializers
embedded/qkbdusb_qws.cpp:92: error: 'd' was not declared in this scope
embedded/qkbdusb_qws.cpp:92: error: invalid use of 'this' in non-member function
embedded/qkbdusb_qws.cpp: At global scope:
embedded/qkbdusb_qws.cpp:95: error: expected constructor, destructor, or type conversion before '::' token
gmake[1]: *** [.obj/release-shared-emb-arm/qkbdusb_qws.o] Error 1
gmake[1]: Leaving directory `/tmp/qt-embedded-linux-opensource-src-4.5.0-snapshot-20080917/src/gui'
gmake: *** [sub-gui-make_default-ordered] Error 2
In fact, the problem is located in the file "configure", l.1861 :
[ "$VAR" = "kbd" ] && CFG_KBD_ON=`echo "${CFG_MOUSE_ON} " | sed "s,${VAL} ,,g"` && CFG_KBD_PLUGIN="$CFG_KBD_PLUGIN ${VAL}"
These instructions are done when there is a plugin-kbd-* argument in the command "configure".
Here the selected keyboard drivers in CFG_KBD_ON are replaced by the selected mouse drivers in CFG_MOUSE_ON.
Surely that's a mistake and the code should be :
[ "$VAR" = "kbd" ] && CFG_KBD_ON=`echo "${CFG_KBD_ON} " | sed "s,${VAL} ,,g"` && CFG_KBD_PLUGIN="$CFG_KBD_PLUGIN ${VAL}"