Обсуждение: Compile error 08.04.0200 with unix-odbc 2.2.14p2-1 on Debian Squeeze AMD64

Поиск
Список
Период
Сортировка

Compile error 08.04.0200 with unix-odbc 2.2.14p2-1 on Debian Squeeze AMD64

От
Joost Kraaijeveld
Дата:
Hi,

I am trying to compile 08.04.0200 on Debian Squeeze AMD64 with unix-odbc
2.2.14p2-1, hoping to get a working version of SQLForeignKeys hich
return nothing when I use 08.03.0200.

The compilation however fails with:

...
odbcapi.c: At top level:
odbcapi.c:1115: error: expected declaration specifiers or '...' before 'SQLROWSETSIZE'
odbcapi.c:1110: error: conflicting types for 'SQLExtendedFetch'
/usr/include/sqlext.h:1857: note: previous declaration of 'SQLExtendedFetch' was here
odbcapi.c: In function 'SQLExtendedFetch':
odbcapi.c:1133: error: 'pcrow' undeclared (first use in this function)
odbcapi.c:1133: error: (Each undeclared identifier is reported only once
odbcapi.c:1133: error: for each function it appears in.)


The actual declaration in /usr/include/sqlext.h is:

SQLRETURN SQL_API SQLExtendedFetch(
    SQLHSTMT           hstmt,
    SQLUSMALLINT       fFetchType,
    SQLLEN             irow,
    SQLULEN      *pcrow,
    SQLUSMALLINT    *rgfRowStatus);

whereas the driver is expecting:

RETCODE        SQL_API
SQLExtendedFetch(
                 HSTMT hstmt,
                 SQLUSMALLINT fFetchType,
                 SQLLEN irow,
#ifdef WITH_UNIXODBC
                 SQLROWSETSIZE *pcrow,
#else
                 SQLULEN *pcrow,
#endif /* WITH_UNIXODBC */
                 SQLUSMALLINT *rgfRowStatus)

I have checked unix-odbc 2.3 (the latest release I believe) but that
version contains the same definition for SQLExtendedFetch

Is there a solution for this problem? Or can I just remove/change the
#ifdef in this case (including in the function definition of course)
without getting into any problems?

TIA


--
Met vriendelijke groeten,

Joost Kraaijeveld
Askesis B.V.
Molukkenstraat 14
6524NB Nijmegen
tel: 024-3888063 / 06-51855277
fax: 024-3608416
web: www.askesis.nl

Вложения

Re: Compile error 08.04.0200 with unix-odbc 2.2.14p2-1 on Debian Squeeze AMD64

От
Hiroshi Inoue
Дата:
HI,

(2010/11/01 15:46), Joost Kraaijeveld wrote:
> Hi,
>
> I am trying to compile 08.04.0200 on Debian Squeeze AMD64 with unix-odbc
> 2.2.14p2-1, hoping to get a working version of SQLForeignKeys hich
> return nothing when I use 08.03.0200.
>
> The compilation however fails with:
>
> ...
> odbcapi.c: At top level:
> odbcapi.c:1115: error: expected declaration specifiers or '...' before 'SQLROWSETSIZE'
> odbcapi.c:1110: error: conflicting types for 'SQLExtendedFetch'
> /usr/include/sqlext.h:1857: note: previous declaration of 'SQLExtendedFetch' was here
> odbcapi.c: In function 'SQLExtendedFetch':
> odbcapi.c:1133: error: 'pcrow' undeclared (first use in this function)
> odbcapi.c:1133: error: (Each undeclared identifier is reported only once
> odbcapi.c:1133: error: for each function it appears in.)
>
>
> The actual declaration in /usr/include/sqlext.h is:
>
> SQLRETURN SQL_API SQLExtendedFetch(
>      SQLHSTMT           hstmt,
>      SQLUSMALLINT       fFetchType,
>      SQLLEN             irow,
>      SQLULEN      *pcrow,
>      SQLUSMALLINT    *rgfRowStatus);
>
> whereas the driver is expecting:
>
> RETCODE        SQL_API
> SQLExtendedFetch(
>                  HSTMT hstmt,
>                  SQLUSMALLINT fFetchType,
>                  SQLLEN irow,
> #ifdef WITH_UNIXODBC
>                  SQLROWSETSIZE *pcrow,
> #else
>                  SQLULEN *pcrow,
> #endif /* WITH_UNIXODBC */
>                  SQLUSMALLINT *rgfRowStatus)
>
> I have checked unix-odbc 2.3 (the latest release I believe) but that
> version contains the same definition for SQLExtendedFetch
>
> Is there a solution for this problem? Or can I just remove/change the
> #ifdef in this case (including in the function definition of course)
> without getting into any problems?

Could you plaese try 9.00.0200?

regards,
Hiroshi Inoue

Re: Compile error 08.04.0200 with unix-odbc 2.2.14p2-1 on Debian Squeeze AMD64

От
Joost Kraaijeveld
Дата:
On Tue, 2010-11-02 at 06:19 +0900, Hiroshi Inoue wrote:
>
> Could you plaese try 9.00.0200?
I did and it compiled without any problem.

Just two questions:

1. Is it correct that there is just 1 .so-file build (psqlodbcw.so)?
2. Does the 9.00.0200 driver work with PostgreSQL 8.4?

TIA

--
Groeten,

Joost Kraaijeveld
Askesis B.V.
Molukkenstraat 14
6524NB Nijmegen
tel: 024-3888063 / 06-51855277
fax: 024-3608416
web: www.askesis.nl



Re: Compile error 08.04.0200 with unix-odbc 2.2.14p2-1 on Debian Squeeze AMD64

От
Hiroshi Inoue
Дата:
(2010/11/02 6:33), Joost Kraaijeveld wrote:
> On Tue, 2010-11-02 at 06:19 +0900, Hiroshi Inoue wrote:
>>
>> Could you plaese try 9.00.0200?
> I did and it compiled without any problem.
>
> Just two questions:
>
> 1. Is it correct that there is just 1 .so-file build (psqlodbcw.so)?

Yes. Please type configure --disable-unicode so as to get ANSI version.

> 2. Does the 9.00.0200 driver work with PostgreSQL 8.4?

Yes.

regards,
HIroshi Inoue