Baghira, Xmd, QT: problema di inclusioni e soluzione
Inviato: gio 15 mag 2008, 14:52
Buon giorno a tutti,
cercando di compilare Baghira http://www.kde-look.org/content/show.ph ... ntent=8692 su Slackware 12.1 (appena installata) mi sono imbattuto in un errore di inclusione:
Il problema non è in Baghira, ma in una doppia dichiarazione tra qglobal di QT e Xmd di X11.
Visto che la cosa mi è sembrata abbastanza grave ecco una mia soluzione: ho aggiunto prima della linea 137 le seguenti modifiche:
In questo modo, se la #ifdef di qglobal viene soddisfatta, la variabile non viene ridichiarata due volte.
E' troppo grezza come soluzione?
Vale la pena di aprire un bug? E, se sì, a chi? X11, QT, Slackware?
cercando di compilare Baghira http://www.kde-look.org/content/show.ph ... ntent=8692 su Slackware 12.1 (appena installata) mi sono imbattuto in un errore di inclusione:
Codice: Seleziona tutto
In file included from /usr/include/X11/extensions/XI.h:55,
from /usr/include/X11/extensions/XInput.h:56,
from /usr/include/X11/extensions/XTest.h:50,
from menu.cpp:42:
/usr/include/X11/Xmd.h:137: error: conflicting declaration 'typedef long int INT32'
/usr/lib/qt/include/qglobal.h:710: error: 'INT32' has a previous declaration as 'typedef int INT32'Visto che la cosa mi è sembrata abbastanza grave ecco una mia soluzione: ho aggiunto prima della linea 137 le seguenti modifiche:
Codice: Seleziona tutto
#ifdef LONG64
typedef long INT64;
typedef int INT32;
#else
#ifndef QGLOBAL_H // Added by Leso
typedef long INT32;
#endif // Added by Leso
#endif
typedef short INT16;
#endif
E' troppo grezza come soluzione?
Vale la pena di aprire un bug? E, se sì, a chi? X11, QT, Slackware?