Dear ones,

 

I am facing problems to get DBD:ODBC compiled on AIX.

Here is the environment:

- AIX 5.3 64 bits

- Perl 5.8.2 64 bits bundled with AIX

- DBI 1.50 (compiled with IBM C compiler 64 bits)

- DBD:Informix 2005 (compiled with IBM C compiler 64 bits)

- DBD:Oracle 1.19 (compiled with IBM C compiler 64 bits)

- unixODBC 2.2.12 32 bits ( I have Informix and freeTDS 32 bits drivers
working with this version )

 

Here is what happens when I try to compile it:

 

[EMAIL PROTECTED]:/home/ebispo/perl/DBD-ODBC-1.17_1 >perl Makefile.PL

Useless use of private variable in void context at Makefile.PL line 647.

You are using a Perl configured with threading enabled.

Please read the warnings in DBI about this.

You should also be aware that on non-Windows platforms ODBC drivers come

in two forms, thread-safe and non-thread-safe drivers and you may need

to make sure you are using the right one.

 

Press return to continue...

 

>>>     Remember to actually *READ* the README file!

        And re-read it if you have any problems.

 

 

Set ODBC HOME to /usr/local/unixODBC from odbc_config

Found what looks like a driver manager in /usr/local/unixODBC

Using ODBC in /usr/local/unixODBC

 

This looks like a unixodbc type of driver manager.

odbcinst -j reports:

 

unixODBC 2.2.12

DRIVERS............: /usr/local/unixODBC/etc/odbcinst.ini

SYSTEM DATA SOURCES: /usr/local/unixODBC/etc/odbc.ini

USER DATA SOURCES..: /usr/local/unixODBC/etc/odbc.ini

 

odbc_config --prefix = /usr/local/unixODBC

odbc_config --include-prefix = /usr/local/unixODBC/include

odbc_config --lib-prefix = /usr/local/unixODBC/lib

odbc_config --version = 2.2.12

odbc_config --odbcversion = 3

 

Adding odbc_config --cflags "-DHAVE_UNISTD_H -DHAVE_PWD_H
-DHAVE_SYS_TYPES_H -DHAVE_LONG_LONG -DSIZEOF_LONG=4 " to CC line

 

We expect to find the sql.h, sqlext.h, sqltypes.h and sqlucode.h (which
were

supplied with unixODBC) in $ODBCHOME/include directory alongside the

/usr/local/unixODBC/lib/libodbc.a library in $ODBCHOME/lib

 

 

Checking if your kit is complete...

Looks good

Using DBI 1.50 (for perl 5.008002 on aix-thread-multi-64all) installed
in /usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/DBI/

Using DBI 1.50 (for perl 5.008002 on aix-thread-multi-64all) installed
in /usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/DBI/

Writing Makefile for DBD::ODBC

 

The DBD::ODBC tests will use these values for the database connection:

    DBI_DSN=dbi:ODBC:Database              e.g. dbi:ODBC:demo

    DBI_USER=user

    DBI_PASS=password

 

 

 

 

 

 

 

[EMAIL PROTECTED]:/home/ebispo/perl/DBD-ODBC-1.17_1 >sudo make

        cp Changes blib/lib/DBD/ODBC/Changes.pm

        cp FAQ blib/lib/DBD/ODBC/FAQ.pm

cp ODBC.pm blib/lib/DBD/ODBC.pm

        /usr/bin/perl -e 'use ExtUtils::Mksymlists;  Mksymlists("NAME"
=> "DBD::ODBC", "DL_FUNCS" => {  }, "FUNCLIST" => [], "DL_VARS" => []);'

        cc_r -c -DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H
-DHAVE_LONG_LONG -DSIZEOF_LONG=4  -I/usr/local/unixODBC/include  -I.
-I/usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/DBI/
-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias
-DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q64 -DUSE_64_BIT_ALL -q64 -O
-DVERSION=\"1.17_1\"  -DXS_VERSION=\"1.17_1\"
"-I/usr/opt/perl5/lib64/5.8.2/aix-thread-multi-64all/CORE"
-DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H -DHAVE_LONG_LONG
-DSIZEOF_LONG=4  -I/usr/local/unixODBC/include ConvertUTF.c

"ConvertUTF.c", line 575.26: 1506-356 (W) Compilation unit is empty.

        /usr/bin/perl -p -e "s/~DRIVER~/ODBC/g"
/usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/DBI//Dr
iver.xst > ODBC.xsi

        /usr/bin/perl /usr/opt/perl5/lib64/5.8.2/ExtUtils/xsubpp
-typemap /usr/opt/perl5/lib64/5.8.2/ExtUtils/typemap  ODBC.xs > ODBC.xsc
&& mv ODBC.xsc ODBC.c

Warning: duplicate function definition 'data_sources' detected in
ODBC.xs, line 217

        cc_r -c -DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H
-DHAVE_LONG_LONG -DSIZEOF_LONG=4  -I/usr/local/unixODBC/include  -I.
-I/usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/DBI/
-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias
-DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q64 -DUSE_64_BIT_ALL -q64 -O
-DVERSION=\"1.17_1\"  -DXS_VERSION=\"1.17_1\"
"-I/usr/opt/perl5/lib64/5.8.2/aix-thread-multi-64all/CORE"
-DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H -DHAVE_LONG_LONG
-DSIZEOF_LONG=4  -I/usr/local/unixODBC/include ODBC.c

        cc_r -c -DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H
-DHAVE_LONG_LONG -DSIZEOF_LONG=4  -I/usr/local/unixODBC/include  -I.
-I/usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/DBI/
-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias
-DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q64 -DUSE_64_BIT_ALL -q64 -O
-DVERSION=\"1.17_1\"  -DXS_VERSION=\"1.17_1\"
"-I/usr/opt/perl5/lib64/5.8.2/aix-thread-multi-64all/CORE"
-DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H -DHAVE_LONG_LONG
-DSIZEOF_LONG=4  -I/usr/local/unixODBC/include dbdimp.c

        cc_r -c -DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H
-DHAVE_LONG_LONG -DSIZEOF_LONG=4  -I/usr/local/unixODBC/include  -I.
-I/usr/opt/perl5/lib64/site_perl/5.8.2/aix-thread-multi-64all/auto/DBI/
-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1 -qnoansialias
-DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q64 -DUSE_64_BIT_ALL -q64 -O
-DVERSION=\"1.17_1\"  -DXS_VERSION=\"1.17_1\"
"-I/usr/opt/perl5/lib64/5.8.2/aix-thread-multi-64all/CORE"
-DHAVE_UNISTD_H -DHAVE_PWD_H -DHAVE_SYS_TYPES_H -DHAVE_LONG_LONG
-DSIZEOF_LONG=4  -I/usr/local/unixODBC/include unicode_helper.c

"unicode_helper.c", line 383.26: 1506-356 (W) Compilation unit is empty.

Running Mkbootstrap for DBD::ODBC ()

        chmod 644 ODBC.bs

        rm -f blib/arch/auto/DBD/ODBC/ODBC.so

        LD_RUN_PATH="" ld  -b64 -bhalt:4 -bM:SRE
-bI:/usr/opt/perl5/lib64/5.8.2/aix-thread-multi-64all/CORE/perl.exp
-bE:ODBC.exp -bnoentry -lpthreads -lc_r ConvertUTF.o  ODBC.o  dbdimp.o
unicode_helper.o  -o blib/arch/auto/DBD/ODBC/ODBC.so
-L/usr/local/unixODBC/lib -lodbc

ld: 0711-317 ERROR: Undefined symbol: .SQLAllocHandle

ld: 0711-317 ERROR: Undefined symbol: .SQLPrepare

ld: 0711-317 ERROR: Undefined symbol: .SQLSetStmtAttr

ld: 0711-317 ERROR: Undefined symbol: .SQLFreeStmt

ld: 0711-317 ERROR: Undefined symbol: .SQLFreeHandle

ld: 0711-317 ERROR: Undefined symbol: .SQLStatistics

ld: 0711-317 ERROR: Undefined symbol: .SQLRowCount

ld: 0711-317 ERROR: Undefined symbol: .SQLDescribeParam

ld: 0711-317 ERROR: Undefined symbol: .SQLBindParameter

ld: 0711-317 ERROR: Undefined symbol: .SQLNumResultCols

ld: 0711-317 ERROR: Undefined symbol: .SQLMoreResults

ld: 0711-317 ERROR: Undefined symbol: .SQLDescribeCol

ld: 0711-317 ERROR: Undefined symbol: .SQLColAttributes

ld: 0711-317 ERROR: Undefined symbol: .SQLBindCol

ld: 0711-317 ERROR: Undefined symbol: .SQLError

ld: 0711-317 ERROR: Undefined symbol: .SQLSetEnvAttr

ld: 0711-317 ERROR: Undefined symbol: .SQLSetConnectAttr

ld: 0711-317 ERROR: Undefined symbol: .SQLGetInfo

ld: 0711-317 ERROR: Undefined symbol: .SQLGetFunctions

ld: 0711-317 ERROR: Undefined symbol: .SQLExecDirect

ld: 0711-317 ERROR: Undefined symbol: .SQLForeignKeys

ld: 0711-317 ERROR: Undefined symbol: .SQLSpecialColumns

ld: 0711-317 ERROR: Undefined symbol: .SQLPrimaryKeys

ld: 0711-317 ERROR: Undefined symbol: .SQLTables

ld: 0711-317 ERROR: Undefined symbol: .SQLColumns

ld: 0711-317 ERROR: Undefined symbol: .SQLCancel

ld: 0711-317 ERROR: Undefined symbol: .SQLGetTypeInfo

ld: 0711-317 ERROR: Undefined symbol: .SQLGetCursorName

ld: 0711-317 ERROR: Undefined symbol: .SQLGetData

ld: 0711-317 ERROR: Undefined symbol: .SQLFetch

ld: 0711-317 ERROR: Undefined symbol: .SQLExecute

ld: 0711-317 ERROR: Undefined symbol: .SQLParamData

ld: 0711-317 ERROR: Undefined symbol: .SQLPutData

ld: 0711-317 ERROR: Undefined symbol: .SQLGetConnectOption

ld: 0711-317 ERROR: Undefined symbol: .SQLSetConnectOption

ld: 0711-317 ERROR: Undefined symbol: .SQLDisconnect

ld: 0711-317 ERROR: Undefined symbol: .SQLTransact

ld: 0711-317 ERROR: Undefined symbol: .SQLDriverConnect

ld: 0711-317 ERROR: Undefined symbol: .SQLConnect

ld: 0711-317 ERROR: Undefined symbol: .SQLAllocEnv

ld: 0711-317 ERROR: Undefined symbol: .SQLDataSources

ld: 0711-317 ERROR: Undefined symbol: .SQLFreeEnv

ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
information.

make: 1254-004 The error code from the last command is 8.

 

 

Stop.

 

I know it probably has to do with the fact my perl is 64 bits and
unixODBC is 32 bits but I do not know how to workaround it.

Any help would be appreciated.

 

Thanks in advance.

 

 

 

Eduardo Alves Bispo

Fone: 2187-0058

Especialista de TI

Cel.: 9227-6648

Database and System Operations

E-mail: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
(NOVO!!)

 

 

 

 

<<image002.jpg>>

Reply via email to