Comment 1 for bug 9735

Revision history for this message
Debian Bug Importer (debzilla) wrote :

Message-Id: <email address hidden>
Date: Fri, 29 Oct 2004 12:47:33 +0200
From: Fabio Massimo Di Nitto <email address hidden>
To: Debian Bug Tracking System <email address hidden>
Subject: multiple FTBFS: qt-x11-free doesn't build on today's (29/10/2004) sid

Package: qt-x11-free
Severity: serious
Justification: no longer builds from source

Problem 1:

make[4]: Entering directory `/qt-x11-free-3.3.3/plugins/src/sqldrivers/odbc'
g++ -c -pipe -I/usr/include/mysql -I/usr/include/freetype2 -I/usr/include/postgresql -I/usr/include/postgresql/server -fno-exceptions -Wall -W -O2 -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SHARED -I/qt-x11-free-3.3.3/mkspecs/linux-g++ -I. -I/usr/include/freetype2 -I../../../../include -I.moc/release-shared/ -o .obj/main.o main.cpp
g++ -c -pipe -I/usr/include/mysql -I/usr/include/freetype2 -I/usr/include/postgresql -I/usr/include/postgresql/server -fno-exceptions -Wall -W -O2 -fPIC -DQT_NO_DEBUG -DQT_PLUGIN -DQT_SHARED -I/qt-x11-free-3.3.3/mkspecs/linux-g++ -I. -I/usr/include/freetype2 -I../../../../include -I.moc/release-shared/ -o .obj/qsql_odbc.o ../../../../src/sql/drivers/odbc/qsql_odbc.cpp
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:61:1: warning: "SQLLEN" redefined
In file included from /usr/include/sql.h:91,
                 from ../../../../src/sql/drivers/odbc/qsql_odbc.h:72,
                 from ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:37:
/usr/include/sqltypes.h:139:1: warning: this is the location of the previous definition
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:62:1: warning: "SQLULEN" redefined
/usr/include/sqltypes.h:140:1: warning: this is the location of the previous definition
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function `QString
   qGetStringData(void*, int, int, bool&, bool)':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:277: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function `QByteArray
   qGetBinaryData(void*, int, SQLINTEGER&, bool&)':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:333: error: invalid conversion
   from `SQLUINTEGER*' to `long unsigned int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:352: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function `int
   qGetIntData(void*, int, bool&)':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:394: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function `double
   qGetDoubleData(void*, int, bool&)':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:412: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function `SQLBIGINT
   qGetBigIntData(void*, int, bool&)':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:431: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function `QSqlFieldInfo
   qMakeFieldInfo(const QODBCPrivate*, int)':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:476: error: invalid conversion
   from `SQLUINTEGER*' to `long unsigned int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function `virtual
   QVariant QODBCResult::data(int)':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:882: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:898: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:914: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function `virtual int
   QODBCResult::numRowsAffected()':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:975: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function `bool
   QODBCResult::exec()':
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1101: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1119: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1141: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1155: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1169: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1184: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1202: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
./../../../src/sql/drivers/odbc/qsql_odbc.cpp:1219: error: invalid conversion
   from `SQLINTEGER*' to `long int*'
make[4]: *** [.obj/qsql_odbc.o] Error 1
make[4]: Leaving directory `/qt-x11-free-3.3.3/plugins/src/sqldrivers/odbc'
make[3]: *** [sub-odbc] Error 2
make[3]: Leaving directory `/qt-x11-free-3.3.3/plugins/src/sqldrivers'
make[2]: *** [sub-sqldrivers] Error 2
make[2]: Leaving directory `/qt-x11-free-3.3.3/plugins/src'
make[1]: *** [sub-plugins] Error 2
make[1]: Leaving directory `/qt-x11-free-3.3.3'
make: *** [libqt-stamp] Error 2

A possible solution would be to place between #ifndef #endif the vars:

# ifndef Q_OS_WIN64
# ifndef SQLLEN
# define SQLLEN SQLINTEGER
# endif
# ifndef SQLULEN
# define SQLULEN SQLUINTEGER
# endif
# endif

but this is not enough..
Problem 2: later during the build process:

make[4]: Entering directory `/qt-x11-free-3.3.3/tools/designer/designer'
/qt-x11-free-3.3.3/bin/uic -L /qt-x11-free-3.3.3/plugins
listboxeditor.ui -o listboxeditor.h
/qt-x11-free-3.3.3/bin/uic: error while loading shared libraries:
libqt.so.3: cannot open shared object file: No such file or directory
make[4]: *** [listboxeditor.h] Error 127
make[4]: Leaving directory `/qt-x11-free-3.3.3/tools/designer/designer'
make[3]: *** [sub-designer] Error 2
make[3]: Leaving directory `/qt-x11-free-3.3.3/tools/designer'
make[2]: *** [sub-designer] Error 2
make[2]: Leaving directory `/qt-x11-free-3.3.3/tools'
make[1]: *** [sub-tools] Error 2
make[1]: Leaving directory `/qt-x11-free-3.3.3'
make: *** [init] Error 2

a possibility would be to use LD_LIBRARY_PATH pointing to the new shiny
libqt and make. That solves the problem but it is a bit hackish imho.

Problem 3: the clean target does not remove the .obj/ directories
withing examples/

so running twice dpkg-buildpackage will miserably fail because the
diff.gz can't be regenerated.

note that this is a clean sid chroot.
It is reproducible constantly.

Regards
Fabio

-- System Information:
Debian Release: 3.1
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.4.26
Locale: LANG=C, LC_CTYPE=C