[freetds] ODBC on 64 bit linux fix.
Sebastien FLAESCH
sf at 4js.com
Mon Jan 21 03:35:49 EST 2008
Hello Frediano,
Yes please send us the binaries, but please give a clear description
(step by step) to execute the test.
I known nothing about the regression tests (what is "common.[ch]" or
the PWD file)?
Do we have to compile the test?
Will you provide us only binaries?
Should we compile the whole HEAD sources on Win64 and run our tests?
Cheers,
Seb
ZIGLIO, Frediano, VF-IT wrote:
>> We have Windows 64b (with VC++ 8 of course) and Linux 64b
>> machines here...
>>
>> Send us a test program and we'll check if you want.
>>
>> Seb
>>
>
> I wrote a small test at
> http://freetds.cvs.sourceforge.net/freetds/freetds/src/odbc/unittests/te
> st64.c?view=log. This source is a unittest for freetds so it require
> common.c and common.h to compile and PWD file to configure.
>
> It works under win32 and linux x86_64 (I used unixODBC and ubuntu 7.10).
>
> Yesterday I managed to get win64 cross compile (thanks to mingw-w64
> project!). Can I send you compiled freetds for win64 to test?
>
> freddy77
>
>> ZIGLIO, Frediano, VF-IT wrote:
>>>> On Jan 18, 10:22am, sf at 4js.com (Sebastien FLAESCH) wrote:
>>>> -- Subject: Re: [freetds] ODBC on 64 bit linux fix.
>>>>
>>>> | Thank you Steve,
>>>> |
>>>> | Here is what we have tested:
>>>> |
>>>> | CFLAGS="-D BUILD_REAL_64_BIT_MODE" ./configure
>>>> --prefix=/opt3/dbs/tds/0.83 --with-odbc-nodm=/opt3/dbs/uxo/3.0
>>>> |
>>>> | But when compiling, we get:
>>>> |
>>>> | odbc.c:794: conflicting types for `SQLParamOptions'
>>>> | /dbs/64bits/uxo/3.0/include/sqlext.h:1893: previous
>>>> declaration of `SQLParamOptions'
>>>> |
>>>> | Am I missing something or is this what Christos tried to fix?
>>>> |
>>>> | The headers comme from UnixODBC 2.2.12 ...
>>>> |
>>>> | Cheers,
>>>> | Seb
>>>>
>>>> Yes, this is what I fixed.
>>>>
>>>> christos
>>> See http://support.microsoft.com/?scid=kb%3Ben-us%3B298678&x=14&y=7
>>>
>>> Also from our configure.ac
>>>
>>> # check is SQLParamOptions accept SQLULEN
>>> AC_TRY_COMPILE([#if defined(_WIN32) ||
>> defined(WIN32) ||
>>> defined(__MINGW32__)
>>> #include <windows.h>
>>> #endif
>>> #include <sql.h>
>>> #include <sqlext.h>
>>>
>>> SQLRETURN SQL_API SQLParamOptions(SQLHSTMT hstmt,
>>> SQLULEN crow, SQLULEN *pirow) {
>>> return SQL_SUCCESS;
>>> }], [return 0],
>>> AC_DEFINE(TDS_SQLPARAMOPTIONS_SQLLEN, 1,
>> [Define to 1 if
>>> SQLParamOptions accept SQLULEN as arguments]))
>>> )
>>>
>>> but in odbc.c
>>>
>>> SQLRETURN ODBC_API
>>> SQLParamOptions(SQLHSTMT hstmt, SQLULEN crow, SQLULEN FAR * pirow)
>>> {
>>> SQLRETURN res;
>>>
>>> This is a problem in MS specifications... pirow should correspond to
>>> SQL_ATTR_PARAMS_PROCESSED_PTR which is not 64-bit according
>> which above
>>> link. Also SQL_ATTR_PARAMS_PROCESSED_PTR (see SQLSetStmtAttr
>>> documentation) maps to IPD SQL_DESC_ROWS_PROCESSED_PTR which is not
>>> documented as 64-bit. However SQL_ATTR_ROWS_FETCHED_PTR
>> which correspond
>>> to IRD SQL_DESC_ROWS_PROCESSED_PTR is documented as 64-bit. So is
>>> SQL_DESC_ROWS_PROCESSED_PTR 32 or 64 bit?? Is it 64-bit
>> only for IRD??
>>> Does pirow maps really to SQL_ATTR_PARAMS_PROCESSED_PTR
>> that maps on IPD
>>> SQL_DESC_ROWS_PROCESSED_PTR?
>>>
>>> Someone have a 64-bit windows machine to execute some
>> test?? I can pass
>>> some source test in order to test all that stuff... just to
>> know how MS
>>> implemented its specifications... Is MingW available for 64-bit??
>>>
>>> freddy77
>>> _______________________________________________
>>> FreeTDS mailing list
>>> FreeTDS at lists.ibiblio.org
>>> http://lists.ibiblio.org/mailman/listinfo/freetds
>>>
>> _______________________________________________
>> FreeTDS mailing list
>> FreeTDS at lists.ibiblio.org
>> http://lists.ibiblio.org/mailman/listinfo/freetds
>>
> _______________________________________________
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
>
More information about the FreeTDS
mailing list