trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: February 2012

Re: [trinity-devel] tqt3 build failure In member function 'virtual int TQODBCResult::numRowsAffected() rror: cannot convert 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}

From: "David C. Rankin" <drankinatty@...>
Date: Wed, 29 Feb 2012 08:35:26 -0600
On 02/28/2012 11:39 PM, David C. Rankin wrote:
> Tim, Darrell,
> 
>   This is my first attempt a building tqt3 from the git tree and I've run into a
> problem. The good news it the build continued for quite some time. I wasn't
> timing, but is estimate 60+% of the build completed. The errors at the end of
> the build were:
> 
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'virtual int
> TQODBCResult::numRowsAffected()':
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:983:60: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '2' to
> 'SQLRETURN SQLRowCount(SQLHSTMT, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'bool
> TQODBCResult::exec()':
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1109:43: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1127:50: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1149:43: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1163:43: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1177:43: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1192:12: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1210:16: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1227:12: error: cannot convert
> 'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
> 'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
> SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'virtual bool
> TQODBCDriver::beginTransaction()':
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1666:23: warning: cast to pointer
> from integer of different size [-Wint-to-pointer-cast]
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'bool
> TQODBCDriver::endTrans()':
> ../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1716:23: warning: cast to pointer
> from integer of different size [-Wint-to-pointer-cast]
> make[3]: *** [.obj/qsql_odbc.o] Error 1
> make[3]: Leaving directory `/build/src/tqt3/plugins/src/sqldrivers/odbc'
> make[2]: *** [sub-odbc] Error 2
> make[2]: Leaving directory `/build/src/tqt3/plugins/src/sqldrivers'
> make[1]: *** [sub-sqldrivers] Error 2
> make[1]: Leaving directory `/build/src/tqt3/plugins/src'
> make: *** [sub-plugins] Error 2
> 
>   This looks liek issues with the odbc driver type definitions. Is this
> something that you are familiar with and can help me with it? Or, is this
> something you don't recognize and need me to send more to help narrow it down?
> 
>   Looks like the src/sql/drivers/odbc/qsql_odbc.cpp code is not happy. The good
> news, is that I've got the Arch build script developed to get (or should I say
> git) it this for :)  Let me know. Thanks!
> 

Looks like the build still fails in the same place with odbc:

cd odbc && make -f Makefile
make[3]: Entering directory `/build/src/tqt3/plugins/src/sqldrivers/odbc'
g++ -c -pipe -I/usr/include/mysql -I/usr/include/postgresql/server
-fno-exceptions -Wall -W -O2 -D_REENTRANT -fPIC  -DQT_NO_DEBUG
-DQT_THREAD_SUPPORT -DQT_PLUGIN -DQT_SHARED
-I/build/src/tqt3/mkspecs/linux-g++-64 -I. -I/usr/include/freetype2
-I../../../../include -I/usr/X11R6/include -I.moc/release-shared-mt/ -o
.obj/main.o main.cpp
g++ -c -pipe -I/usr/include/mysql -I/usr/include/postgresql/server
-fno-exceptions -Wall -W -O2 -D_REENTRANT -fPIC  -DQT_NO_DEBUG
-DQT_THREAD_SUPPORT -DQT_PLUGIN -DQT_SHARED
-I/build/src/tqt3/mkspecs/linux-g++-64 -I. -I/usr/include/freetype2
-I../../../../include -I/usr/X11R6/include -I.moc/release-shared-mt/ -o
.obj/qsql_odbc.o ../../../../src/sql/drivers/odbc/qsql_odbc.cpp
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function 'TQString
qGetStringData(SQLHANDLE, int, int, bool&, bool)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:285:21: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function 'TQByteArray
qGetBinaryData(SQLHANDLE, int, SQLINTEGER&, bool&)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:341:14: error: cannot convert
'SQLUINTEGER* {aka unsigned int*}' to 'SQLULEN* {aka long unsigned int*}' for
argument '7' to 'SQLRETURN SQLDescribeCol(SQLHSTMT, SQLUSMALLINT, SQLCHAR*,
SQLSMALLINT, SQLSMALLINT*, SQLSMALLINT*, SQLULEN*, SQLSMALLINT*, SQLSMALLINT*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:360:21: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function 'int
qGetIntData(SQLHANDLE, int, bool&)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:402:27: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function 'double
qGetDoubleData(SQLHANDLE, int, bool&)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:420:27: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function 'SQLBIGINT
qGetBigIntData(SQLHANDLE, int, bool&)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:439:27: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In function 'TQSqlFieldInfo
qMakeFieldInfo(const TQODBCPrivate*, int)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:484:13: error: cannot convert
'SQLUINTEGER* {aka unsigned int*}' to 'SQLULEN* {aka long unsigned int*}' for
argument '7' to 'SQLRETURN SQLDescribeCol(SQLHSTMT, SQLUSMALLINT, SQLCHAR*,
SQLSMALLINT, SQLSMALLINT*, SQLSMALLINT*, SQLULEN*, SQLSMALLINT*, SQLSMALLINT*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'bool
TQODBCPrivate::setConnectionOptions(const TQString&)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:546:67: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:549:74: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:552:69: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:571:67: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:574:67: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:593:61: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'virtual
TQVariant TQODBCResult::data(int)':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:890:25: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:906:25: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:922:25: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '6' to
'SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN,
SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'virtual int
TQODBCResult::numRowsAffected()':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:983:60: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '2' to
'SQLRETURN SQLRowCount(SQLHSTMT, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'bool
TQODBCResult::exec()':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1109:43: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1127:50: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1149:43: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1163:43: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1177:43: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1192:12: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1210:16: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1227:12: error: cannot convert
'SQLINTEGER* {aka int*}' to 'SQLLEN* {aka long int*}' for argument '10' to
'SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT,
SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*)'
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'virtual bool
TQODBCDriver::beginTransaction()':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1666:23: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
../../../../src/sql/drivers/odbc/qsql_odbc.cpp: In member function 'bool
TQODBCDriver::endTrans()':
../../../../src/sql/drivers/odbc/qsql_odbc.cpp:1716:23: warning: cast to pointer
from integer of different size [-Wint-to-pointer-cast]
make[3]: *** [.obj/qsql_odbc.o] Error 1
make[3]: Leaving directory `/build/src/tqt3/plugins/src/sqldrivers/odbc'
make[2]: *** [sub-odbc] Error 2
make[2]: Leaving directory `/build/src/tqt3/plugins/src/sqldrivers'
make[1]: *** [sub-sqldrivers] Error 2
make[1]: Leaving directory `/build/src/tqt3/plugins/src'
make: *** [sub-plugins] Error 2

  I'm double checking on my end. Any idea what's causing this? I have put up the
full build log here:

http://www.3111skyline.com/dl/dt/trinity/err/bld/tqt3/tde-tqt3-3.8.8.d_git-1-x86_64-build.log.bz2

-- 
David C. Rankin, J.D.,P.E.